What problem does it solve? Developers building Next.js applications often misuse Client Components, mishandle data fetching and caching, or structure routes inconsistently, leading to bloated bundles and poor performance. This Skill provides a structured reference of App Router principles to guide correct architectural decisions. ## Core Features & Use Cases - Server vs Client Component Guidance: Decision trees and tables for choosing between Server Components and 'use client' boundaries. - Data Fetching & Caching Patterns: Covers static rendering, ISR revalidation, no-store dynamic fetching, and on-demand revalidation with revalidatePath/revalidateTag. - Routing & Project Structure: Documents file conventions (page.tsx, layout.tsx, loading.tsx, error.tsx), route groups, parallel routes, and intercepting routes. - Use Case: When building a new dashboard page in a Next.js app, use this Skill to decide where to fetch data, how to structure layouts, and which caching strategy to apply. ## Quick Start Review my Next.js App Router page and tell me whether it should be a Server or Client Component and how to fetch its data.