What problem does it solve? Developers building Next.js 13+ applications often struggle to decide which components should render on the server versus the client, leading to bloated JavaScript bundles, slower page loads, and unnecessary API layers. ## Core Features & Use Cases - Server-First Data Fetching: Fetch data directly in async Server Components without creating API routes, accessing databases and secrets securely on the server. - Server/Client Composition Patterns: Pass Server Components as children into Client Components to keep interactive islands small while preserving server rendering. - Bundle Size Reduction: Keep components server-side by default and apply 'use client' only where hooks, browser APIs, or event handlers are required. - Use Case: When building a dashboard page, fetch the data in an async Server Component, render the static layout on the server, and wrap only the interactive chart or toggle in a Client Component. ## Quick Start Ask the assistant to refactor a Next.js page so data fetching happens in a Server Component and only interactive parts use 'use client'.