What problem does it solve? Developers building Next.js applications often misuse Client Components, mishandle data fetching, or ignore caching and error boundaries, leading to bloated bundles and poor performance. This Skill provides structured principles for making correct architectural decisions in Next.js App Router projects. ## Core Features & Use Cases - Server vs Client Component Guidance: Decision trees and tables for choosing when to use 'use client' versus default Server Components. - Data Fetching & Caching Patterns: Covers static, ISR, and dynamic fetch strategies plus revalidation with revalidatePath and revalidateTag. - Routing & Structure Conventions: Documents file conventions (page.tsx, layout.tsx, loading.tsx, error.tsx), route groups, parallel routes, and API route handlers. - Use Case: When building a new dashboard page, consult this Skill to decide the component split, set up loading and error states, configure metadata, and apply the right caching strategy before writing code. ## Quick Start Review my Next.js page component and tell me whether it should be a Server or Client Component and how to structure its data fetching.