Skip to main content
skill CX Codex

nextjs · pymodel — Claude Code skill: Next.js 16 App Router rules

A skill with 42 rules for Next.js 16 App Router caching, routing and server components. Keeps your agent on current practices instead of deprecated APIs.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add PyModel/react-frontend-skills --skill nextjs -a claude-code
Open on GitHub

What nextjs does

The skill packs 42 rules into 8 categories ranked by impact: build and bundle, caching, server components and data fetching, routing, server actions, streaming, metadata, client components. Each rule carries a prefix (build-, cache-, server-, route-, action-, stream-, meta-, client-) and a file under references/<rule-id>.md with the reasoning plus wrong and right code samples.

Two rules cover Next.js 16.3 preview features: Instant Navigations and Partial Prefetching. They sit behind cacheComponents and partialPrefetching, so plan around those flags before you rely on them.

Start in the project root with npx -y @pymodel/react-frontend-skills detect and npx -y @pymodel/react-frontend-skills scan --skill nextjs. The scan maps deprecated APIs to rule IDs. Then open the reference files that match your task and every scan hit.

What it helps with

  • pick a caching strategy with the 'use cache' directive
  • fetch data in parallel inside server components
  • build modal patterns with intercepting routes
  • show form pending state via useFormStatus
  • generate dynamic metadata and OpenGraph images

Example prompts for the agent

  • Scan my App Router for deprecated APIs and tell me which nextjs rules apply
  • Add caching to the catalog page following the nextjs skill rules
  • Split this heavy client component the way the nextjs skill suggests

How to install nextjs

1Skills CLI (Vercel)

npx skills add PyModel/react-frontend-skills --skill nextjs -a claude-code

2Manually: put the files in place

~/.claude/skills/nextjs/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/nextjs/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about nextjs

How do I install nextjs in Claude?

Run npx skills add PyModel/react-frontend-skills --skill nextjs -a claude-code. The skill lands at ~/.claude/skills/nextjs/SKILL.md.

What does the nextjs skill do?

It gives your agent 42 rules for Next.js 16 App Router: caching, server components, routing, server actions, streaming, metadata. Rules are ordered by performance impact.

What do the Instant Navigations and Partial Prefetching rules require?

They cover Next.js 16.3 preview features gated behind cacheComponents and partialPrefetching. Without those flags the two rules do not apply.

Source text

SKILL.md · MIT
---
name: nextjs
description: Next.js 16 App Router caching and routing.
---

# Next.js Community Next.js 16 App Router Best Practices

Comprehensive performance optimization guide for Next.js 16 App Router applications, maintained by the Next.js Community. Contains 42 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation. Two rules cover Next.js 16.3 preview features (Instant Navigations, Partial Prefetching), gated behind `cacheComponents` and `partialPrefetching`.

## When to Apply

Reference these guidelines when:
- Writing new Next.js 16 App Router code
- Configuring caching strategies with 'use cache' directive
- Implementing server components and data fetching
- Setting up routing with parallel and intercepting routes
- Creating server actions for form handling and mutations

## Rule Categories by Priority

| Priority | Category | Impact | Prefix |
|----------|----------|--------|--------|
| 1 | Build & Bundle Optimization | CRITICAL | `build-` |
| 2 | Caching Strategy | CRITICAL | `cache-` |
| 3 | Server Components & Data Fetching | HIGH | `server-` |
| 4 | Routing & Navigation | HIGH | `route-` |
| 5 | Server Actions & Mutations | MEDIUM-HIGH | `action-` |
| 6 | Streaming & Loading States | MEDIUM | `stream-` |
| 7 | Metadata & SEO | MEDIUM | `meta-` |
| 8 | Client Components | LOW-MEDIUM | `client-` |

## Quick Reference

### 1. Build & Bundle Optimization (CRITICAL)

- `build-optimize-package-imports` - Configure optimizePackageImports for Icon Libraries
- `build-dynamic-imports` - Use Dynamic Imports for Heavy Components
- `build-barrel-files` - Avoid Barrel File Imports in App Router
- `build-turbopack-config` - Configure Turbopack at the top level
- `build-external-packages` - Configure Server External Packages for Node Dependencies

### 2. Caching Strategy (CRITICAL)

- `cache-use-cache-directive` - Use 'use cache' with Cache Components
- `cache-revalidate-tag` - Use revalidateTag with cacheLife Profiles
- `cache-fetch-options` - Configure Fetch Cache Options Explicitly
- `cache-revalidate-path` - Use revalidatePath for Route-Level Cache Invalidation
- `cache-react-cache` - Use React cache() for Request Deduplication
- `cache-segment-config` - Match route configuration to the active cache model

### 3. Server Components & Data Fetching (HIGH)

- `server-parallel-fetching` - Fetch Data in Parallel in Server Components
- `server-component-streaming` - Stream Server Components for Progressive Loading
- `server-data-colocation` - Colocate Data Fetching with Components
- `server-preload-pattern` - Use Preload Pattern for Critical Data
- `server-avoid-client-fetching` - Avoid Client-Side Data Fetching for Initial Data
- `server-error-handling` - Handle Server Component Errors Gracefully

### 4. Routing & Navigation (HIGH)

- `route-parallel-routes` - Use Parallel Routes for Independent Content
- `route-intercepting-routes` - Use Intercepting Routes for Modal Patterns
- `route-prefetching` - Configure Link Prefetching Appropriately
- `route-instant-navigations` - Make Navigations Instant with Stream, Cache, or Block (16.3 preview)
- `route-partial-prefetching` - Use Partial Prefetching for Reusable Route Shells (16.3 preview)
- `route-proxy-ts` - Use proxy.ts for Network Boundary Logic
- `route-not-found` - Use notFound() for Missing Resources

### 5. Server Actions & Mutations (MEDIUM-HIGH)

- `action-server-action-forms` - Use Server Actions for Form Submissions
- `action-pending-states` - Show Pending States with useFormStatus
- `action-error-handling` - Handle Server Action Errors Gracefully
- `action-optimistic-updates` - Use Optimistic Updates for Instant Feedback
- `action-revalidation` - Revalidate Cache After Mutations

### 6. Streaming & Loading States (MEDIUM)

- `stream-suspense-boundaries` - Place Suspense Boundaries Strategically
- `stream-loading-tsx` - Use loading.tsx for Route-Level Loading States
- `stream-error-tsx` - Use error.tsx for Route-Level Error Boundaries
- `stream-skeleton-matching` - Match Skeleton Dimensions to Actual Content
- `stream-nested-suspense` - Nest Suspense for Progressive Disclosure

### 7. Metadata & SEO (MEDIUM)

- `meta-generate-metadata` - Use generateMetadata for Dynamic Metadata
- `meta-sitemap` - Generate Sitemaps Dynamically
- `meta-robots` - Configure Robots for Crawl Control
- `meta-opengraph-images` - Generate Dynamic OpenGraph Images

### 8. Client Components (LOW-MEDIUM)

- `client-use-client-boundary` - Minimize 'use client' Boundary Scope
- `client-children-pattern` - Pass Server Components as Children to Client Components
- `client-hydration-mismatch` - Avoid Hydration Mismatches
- `client-third-party-scripts` - Load Third-Party Scripts Efficiently

## How to Use

Run in the project root first:

```bash
npx -y @pymodel/react-frontend-skills detect               # installed vs. targeted versions
npx -y @pymodel/react-frontend-skills scan --skill nextjs  # deprecated APIs → rule IDs
```

Read `references/<rule-id>.md` for each rule above that matches the task and for each `scan` hit: why it matters, then incorrect vs. correct code.

## Related Skills

- For React 19 fundamentals, see `react` skill
- For data fetching patterns, see `tanstack-query` skill
- For client-side forms, see `react-hook-form` skill

© PyModel · MIT · PyModel/react-frontend-skills

Similar skills

Everything for Frontend and UI →

nextjs by other authors comes first.

From the same set10

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor