Layers
One of the core features of Nuxt 3 is the layers and extending support. You can extend a default Nuxt application to reuse components, utils, and configuration. The layers structure is almost identical to a standard Nuxt application which makes them easy to author and maintain. Some example use cases:
- Share reusable configuration presets across projects using
nuxt.config
andapp.config
- Create a component library using
components/
directory - Create utility and composable library using
composables/
andutils/
directories - Create Nuxt themes
- Create Nuxt module presets
- Share standard setup across projects
You can extend a layer by adding the extends property to the nuxt.config.ts
file.
nuxt.config.ts
export default defineNuxtConfig({ extends: [ '../base', // Extend from a local layer '@my-themes/awesome', // Extend from an installed npm package 'github:my-themes/awesome#v1', // Extend from a git repository ]})
Authoring Nuxt Layers
See Layer Author Guide to learn more.