Skip to content

Nuxt 4 + Nitro · Preview

The same Vue messages, from server to browser.

Write core macros in Vue SFC scripts. The local Nuxt module connects the existing compiler to request-local server rendering, Nitro API handlers, and locale-bound catalogs before hydration.

2.0 preview. Try the upcoming release through the repository examples. Registry latest still supplies 1.x. Read the release notes.

01 — Verified proof

One booking app. Four languages. Both runtimes.

The Frontend Stage 2026 demo shares its event data and styling with the other examples. Development and production checks cover English, German, French, and Spanish: translated HTML without JavaScript, matching hydration, ticket plurals and totals, cart actions, and localized server queries.

Overlapping page renders and API requests keep their language across awaits. Initial components load three active-language fragments; an async component and a lazy Nuxt page each bring one more. Same-language page navigation reuses the document, while language controls start a new one. Failed catalog delivery reaches recovery UI before affected content can run.

02 — Host wiring

The compiler stays shared. Nuxt owns the lifecycle.

The local module installs the Vite compiler before Vue processing and uses the same server-targeted compiler for Nitro handlers. Each request gets its own runtime; Nitro shares one lazily loaded production catalog store across page and API code.

The server serializes the locale into Nuxt state and HTML attributes. The client initializes after payload revival, with the same time zone. Generated locale bindings are embedded during the build, so the deployed output does not need source catalogs or the native compiler. Components contain no catalog loaders or manifest plumbing.

03 — Preview boundary

A Node SSR spike, with a clear deployment scope.

There is no published Nuxt package. This private proof targets Nuxt 4.6.2, Vue 3.5.44, Vite 8.3.4, and Nitro 2.13.5 in a root-mounted, same-origin Node deployment with query-selected locale. It is separate from the six-family, four-strategy example matrix.

Other Nitro presets, CDN or subpath assets, prerendering, streaming, islands, other locale URL strategies, and catalog HMR are not verified. Template macros and Vue rich text remain unsupported. The stability guide records the compatibility boundary.