The React framework for production — file-based routing, server components, image optimization, ISR, and zero-config deployment baked in.
Next.js is the React meta-framework that turns "a React app" into "a production web app" without you having to assemble the pieces yourself. File-based routing, server-side rendering, static generation, image optimization, font loading, internationalization, and a built-in edge runtime are all configured by default. The current version (15.x) is built around React Server Components: by default, components render on the server and ship zero JavaScript to the client, with `"use client"` opting into interactivity on a per-component basis. This split is the biggest change in the React ecosystem in years, and Next.js is the only framework that has shipped it at scale. Honest trade-offs: Next.js is opinionated in ways that don't fit every project. The server/client component split has a real learning curve. The proprietary features (middleware, ISR, image optimization) work best on Vercel and have rough edges on other hosts. For most teams shipping a web product in 2026, however, Next.js is still the right default.
Folders become routes, file names become segments — no router config to maintain.
Server-rendered components ship zero JS by default; opt into client with `"use client"`.
Nested layouts, parallel routes, intercepting routes — the new routing model is powerful.
Automatic format conversion, responsive sizes, and lazy loading for `<Image>` components.
Incremental static regeneration and partial prerendering for fast pages with fresh data.
Login to comment
Be careful with the App Router features that only work on Vercel. We tied ourselves to a few patterns that are awkward to replicate on Fly.io. Lesson learned: read the docs, not just the marketing.
Server components made a noticeable difference for our content-heavy marketing pages. Lighthouse score went from 78 to 96 on mobile.
Be careful with the App Router features that only work on Vercel. We tied ourselves to a few patterns that are awkward to replicate on Fly.io. Lesson learned: read the docs, not just the marketing.
Server components made a noticeable difference for our content-heavy marketing pages. Lighthouse score went from 78 to 96 on mobile.
Be careful with the App Router features that only work on Vercel. We tied ourselves to a few patterns that are awkward to replicate on Fly.io. Lesson learned: read the docs, not just the marketing.
Server components made a noticeable difference for our content-heavy marketing pages. Lighthouse score went from 78 to 96 on mobile.