Next.js Architecture Overview
On this page
What Next.js Adds
- File based routing and layouts.
- Multiple rendering modes per route: SSR, SSG, ISR, CSR.
- Built in bundling, code splitting, and optimization.
- Production deployment primitives: edge, server, and static output.
Core Building Blocks
- Routes: pages or app router segments.
- Layouts: stable shell boundaries.
- Data fetching: server side loading strategies.
- API routes: server endpoints when used.
- Middleware: request time routing and auth gates.
Boundary Rules
- Keep route shells stable and isolate expensive trees.
- Do not leak transport DTOs into UI components.
- Separate server only logic from client components clearly.
- Define caching and revalidation rules explicitly per route.
Operational Concerns
- Cache control and revalidation are part of correctness.
- Misconfigured caching can leak personalized content.
- Build time and bundle size must be monitored continuously.
Deployment Model
- Static assets are served via CDN.
- Server rendering can run on Node or Edge runtimes depending on configuration.
- Monitoring must include server latency, edge cache hit rate, and client metrics.
Failure Modes
- Route level caching leaks user specific HTML or data.
- Hydration warnings due to mixing server and client only rendering.
- Large bundles due to shared imports and missing boundaries.
- Slow builds due to unbounded static generation and heavy data transforms.
Production Checklist
- Route strategy documented: SSR, SSG, ISR, CSR by page.
- Caching and revalidation rules tested and monitored.
- Server and client boundaries are explicit.
- Bundle size budgets and build time budgets exist.