v3.18.0
📦 nuxtView on GitHub →
✨ 9 features🐛 7 fixes🔧 11 symbols
Summary
Nuxt 3.18.0 introduces lazy hydration macros, enhanced accessibility with a built-in route announcer, and Chrome DevTools workspace integration. It focuses on backporting Nuxt v4 features and improving performance through oxc-based transformations.
Migration Steps
- Run 'npx nuxi@latest upgrade --dedupe' to update the core package and dependencies.
- If you use a custom app.vue, manually add the <NuxtRouteAnnouncer /> component to ensure accessibility features are maintained.
✨ New Features
- Support for lazy hydration macros via defineLazyHydrationComponent for ergonomic hydration control.
- Automatic inclusion of <NuxtRouteAnnouncer> in the built-in app.vue for improved accessibility.
- Chrome DevTools workspace integration allowing source file editing directly from the browser.
- Added onWatcherCleanup from Vue to the auto-imports presets.
- Page routes are now exposed to Nitro for enhanced observability and monitoring.
- The addServerImports kit utility now supports passing a single import object instead of requiring an array.
- Modules can now contribute to the typescript.hoist configuration.
- Improved component type safety with typed slots for <ClientOnly> and <DevOnly>.
- Exported prop types for <NuxtTime> to facilitate customization.
🐛 Bug Fixes
- Retain old data when computed keys change during data fetching.
- Restricted scrollBehaviorType usage to hash scrolling only.
- Added trailing slashes to specific directory aliases for consistency.
- Fixed transform/minify types and updated oxc-transform.
- Included source base URL for remote islands.
- Ensured all plugins execute after error rendering in error.vue.
- Improved Vite-node communication via internal sockets for faster development builds.
🔧 Affected Symbols
defineLazyHydrationComponentNuxtRouteAnnounceronWatcherCleanupaddServerImportstypescript.hoistClientOnlyDevOnlyNuxtTimeoxc-walkeronPrehydratescrollBehaviorType