Next.js 15.3
Key Points
- Turbopack builds (alpha)
- onNavigate and useLinkStatus navigation hooks
- Early client instrumentation hook
Summary
Next.js 15.3 ships Turbopack for production builds (alpha), community Rspack support, a client-side instrumentation hook, new navigation hooks, and significant TypeScript language-server performance improvements. This release focuses on faster builds, earlier client observability, and finer-grained client navigation control. Engineers should validate Turbopack and Rspack in staging or preview environments before using in mission-critical production.
Key Points
- Turbopack builds (alpha): run
next build --turbopack. Integration tests are ~99% passing; recommended for preview/staging and local testing only. Performance scales with CPU (e.g., ~+28% @4 cores, ~+60% @16 cores, ~+83% @30 cores). Persistent caching work is ongoing. - Rspack (experimental): community adapter (next-rspack) provides near-Webpack compatibility for teams that cannot move to Turbopack yet; ~96% tests passing against the integration suite.
- Client instrumentation hook: add
instrumentation-client.js|tsat the project root to initialize monitoring/analytics/error tracking before your app code runs. - Navigation hooks:
onNavigate(Link prop) can inspect or cancel SPA navigations;useLinkStatusreturns apendingboolean for localized loading indicators during transitions. - Config change: Turbopack options moved from
experimental.turboto a top-levelturbopackkey innext.config.ts(the old option remains supported until the next major release). - TypeScript plugin: LSP response times improved ~60% in large codebases, fixing hangs/crashes and improving editor responsiveness.
Upgrade and testing
- Automated upgrade:
npx @next/codemod@canary upgrade latest - Manual upgrade:
npm install next@latest react@latest react-dom@latest - New project:
npx create-next-app@latest - Recommendations: test Turbopack in staging/preview, compare bundle size and performance, and report feedback via GitHub discussions/issues.