2 min čítania
Next.js 16.3 — Instant Navigations and a lighter dev server
Next.js 16.3 cuts dev-server memory by up to 90%, caches builds, type-checks with TypeScript 7, and adds opt-in Instant Navigations for SPA-like speed.
- nextjs
- react
- javascript
- release
Tento článok je v angličtine.
Next.js 16.3 is out, and the Next.js team calls it the biggest update since 16.0. It has two parts: improvements every app gets just by upgrading, and Instant Navigations, an opt-in set of features that makes page changes feel as fast as a single-page app.
Free with the upgrade
npm install next@latest- Up to 90% less dev-server memory. Turbopack now caches to disk and frees memory it no longer needs. On the vercel.com dashboard, memory after compiling 50 routes dropped from 21.5 GB to 2 GB.
- Cached production builds.
next buildreuses unchanged output from previous builds; Vercel reports up to 5.5× faster builds on CI. - TypeScript 7 for type checking. Install
typescript@^7andnext builduses the new Go compiler. - Up to 22% more requests under load, because server rendering now uses native Node.js streams instead of web streams.
- Fewer prefetch requests, as small prefetches are combined into one.
- Docs for AI coding agents.
next devkeeps anAGENTS.mdpointing to the docs for your exact Next.js version.
Root params
This one is useful for multilingual sites. Values from the top-level route segment, like [lang], can now be read in any Server Component instead of being passed down as props:
import { lang } from 'next/root-params'
export default async function Footer() {
const locale = await lang()
// …
}This site is built on app/[lang]/ and passes locale through almost every component, so this feature removes a lot of that.
Error boundaries that can retry
catchError from next/error builds an error boundary that no longer interferes with notFound() or redirect(). It also receives a retry() function that re-fetches the failed part, including Server Components:
'use client'
import { catchError, type ErrorInfo } from 'next/error'
function Fallback(_: object, { error, retry }: ErrorInfo) {
return <button onClick={() => retry()}>{error.message}. Try again</button>
}
export default catchError(Fallback)Instant Navigations (opt-in)
Turn on two flags:
// next.config.ts
const nextConfig = { cacheComponents: true, partialPrefetching: true }With these flags, Next.js prefetches a loading shell for each link, so a click shows the new page's layout immediately while the data streams in. A new devtools panel, Instant Insights, flags navigations that are not instant, and the instant() helper from @next/playwright lets you test that it stays that way. The Next.js team says this behavior will become the default in a future major version.
Also new: the Vite-compatible import.meta.glob in Turbopack, an experimental Rust port of the React Compiler (34–46% faster dev startup in their tests), and experimental offline retries with useOffline.
Bottom line
Upgrade everything: memory, build and rendering gains come without code changes. Try Instant Navigations on a branch, since it is the direction Next.js is heading. And go straight to the latest 16.3 patch release, which includes security fixes.