Server vs client components
Default to Server Components for data fetch and static structure. Add "use client" only for interactivity, browser APIs, and hooks. PII and secrets never cross to client bundles.
Composition pattern: server wrapper imports client leaf widgets — keeps JS payload small.
Data fetching
Fetch in RSC with native fetch + cache options, or use server-side ORM. Do not waterfall — parallelize with Promise.all in layout/page trees.
Partially — route handlers remain for webhooks, mobile clients, and third-party integrations.
Discuss your project with an architect
No spam — response within one business day.
Schedule Consultation →