busirocket-nextjs-route-handlers
SKILL.md
Next.js Route Handlers
Patterns for thin, maintainable route handlers in Next.js App Router.
When to Use
Use this skill when:
- Creating or refactoring
app/api/**/route.tsfiles - Implementing API endpoints
- Validating request inputs
- Returning standardized JSON responses
- Deciding server vs client component boundaries
Non-Negotiables (MUST)
- Route handlers must be thin: validate input, call a
services/function, return a response. - No business logic or IO directly in the handler.
- Never return unvalidated request input.
- Use standard JSON response shapes:
{ data }for success,{ error: { code, message } }for errors. - Use appropriate HTTP status codes (200, 201, 204, 400, 401, 403, 404, 409, 500).
Server vs Client Components
app/**/page.tsxandapp/**/layout.tsxare Server Components by default.- Use Client Components only when you need: state/event handlers, effects, browser-only APIs.
'use client'creates a boundary; keep client islands small.- Props from Server -> Client must be serializable.
Rules
Next.js App Router
nextjs-server-vs-client- Server vs Client Components (defaults, when to use client)nextjs-serializable-props- Props must be serializable from Server to Clientnextjs-protecting-server-code- Protecting server-only code from client importsnextjs-special-file-exports- Allowed extra exports for Next.js special files
Route Handlers
nextjs-route-placement- Route handler placement and conflicts with pagesnextjs-thin-handler-rule- Thin handler rule (STRICT)nextjs-http-methods- Supported HTTP methodsnextjs-caching-model- Caching model for route handlersnextjs-cache-components- Cache Components note for route handlers
API Response Shapes
nextjs-response-shapes- Standard JSON response shapes (success/error)nextjs-status-codes- HTTP status codes to usenextjs-response-rules- Rules for API responses (validation, error handling)
Validation
nextjs-validation-boundaries- Where validation lives (route handlers, services, utils)nextjs-validation-patterns- Validation patterns (unknown inputs, guards)nextjs-validation-helpers- Recommended validation helpersnextjs-validation-rules- Validation rules (no inline types/helpers)
Related Skills
busirocket-react-components-and-hooks- Component patterns and Server/Client boundariesbusirocket-validation- Validation strategies (Zod schemas, guard helpers)busirocket-core-conventions- File structure and boundaries
How to Use
Read individual rule files for detailed explanations and code examples:
rules/nextjs-thin-handler-rule.md
rules/nextjs-response-shapes.md
rules/nextjs-validation-boundaries.md
Each rule file contains:
- Brief explanation of why it matters
- Code examples (correct and incorrect patterns)
- Additional context and best practices
Weekly Installs
7
Repository
busirocket/agents-skillsFirst Seen
Jan 28, 2026
Security Audits
Installed on
mcpjam7
codebuddy7
kilo7
junie7
windsurf7
zencoder7