skills/pproenca/dot-skills/nextjs-16-app-router

nextjs-16-app-router

SKILL.md

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 40 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.

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 - Enable Turbopack File System Caching
  • build-external-packages - Configure Server External Packages for Node Dependencies

2. Caching Strategy (CRITICAL)

  • cache-use-cache-directive - Use the 'use cache' Directive for Explicit Caching
  • cache-revalidate-tag - Use revalidateTag with cacheLife Profiles
  • cache-fetch-options - Configure Fetch Cache Options Correctly
  • cache-revalidate-path - Use revalidatePath for Route-Level Cache Invalidation
  • cache-react-cache - Use React cache() for Request Deduplication
  • cache-segment-config - Configure Route Segment Caching with Exports

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-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

Read individual reference files for detailed explanations and code examples:

Related Skills

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

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md

Weekly Installs
3
Install
$ npx skills add pproenca/dot-skills --skill "nextjs-16-app-router"
Installed on
claude-code3
kilo1
windsurf1
amp1
clawdbot1
opencode1