https://github.com/vuetifyjs/nuxt-module
Zero-config Nuxt Module for Vuetify
https://github.com/vuetifyjs/nuxt-module
nuxt nuxt-module nuxt3 vuetify vuetify3
Last synced: about 2 months ago
JSON representation
Zero-config Nuxt Module for Vuetify
- Host: GitHub
- URL: https://github.com/vuetifyjs/nuxt-module
- Owner: vuetifyjs
- License: mit
- Created: 2023-06-30T16:36:50.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-04T17:39:11.000Z (9 months ago)
- Last Synced: 2025-05-08T01:59:13.608Z (7 months ago)
- Topics: nuxt, nuxt-module, nuxt3, vuetify, vuetify3
- Language: TypeScript
- Homepage: https://nuxt.vuetifyjs.com/
- Size: 1.15 MB
- Stars: 246
- Watchers: 16
- Forks: 27
- Open Issues: 51
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README

Zero-config Nuxt Module for Vuetify
## π Features
- π [**Documentation & guides**](https://nuxt.vuetifyjs.com/)
- π **Zero-Config**: sensible built-in default [Vuetify](https://vuetifyjs.com/) configuration for common use cases
- π **Extensible**: expose the ability to customize the Vuetify configuration via [Nuxt Runtime Hooks](https://nuxt.com/docs/guide/going-further/hooks#usage-with-plugins)
- β‘ **Fully Tree Shakable**: by default, only the needed Vuetify components are imported
- π οΈ **Versatile**: custom Vuetify [directives](https://vuetifyjs.com/en/getting-started/installation/#manual-steps) and [labs components](https://vuetifyjs.com/en/labs/introduction/) registration
- β¨ **Configurable Styles**: configure your variables using [Vuetify SASS Variables](https://vuetifyjs.com/en/features/sass-variables/)
- π₯ **SSR**: automatic SSR detection and configuration including [HTTP Client hints](https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints)
- π© **Nuxt Layers and Module Hooks**: load your Vuetify configuration using [Nuxt Layers](https://nuxt.com/docs/getting-started/layers#layers) or using a custom module via `vuetify:registerModule` [Nuxt Module Hook](https://nuxt.com/docs/guide/going-further/hooks#nuxt-hooks-build-time)
- π₯ **Vuetify Configuration File**: configure your Vuetify options using a custom `vuetify.config` file, no dev server restart needed
- π₯ **Pure CSS Icons**: no more font/js icons, use the new `unocss-mdi` icon set or build your own with UnoCSS Preset Icons
- π **Icon Fonts**: configure the [icon font](https://vuetifyjs.com/en/features/icon-fonts/) you want to use, the module will automatically import it for you using CDN or local dependencies
- π **SVG Icons**: ready to use [@mdi/js](https://www.npmjs.com/package/@mdi/js) and [@fortawesome/vue-fontawesome](https://www.npmjs.com/package/@fortawesome/vue-fontawesome) SVG icons packs
- π¦ **Multiple Icon Sets**: register [multiple icon sets](https://vuetifyjs.com/en/features/icon-fonts/#multiple-icon-sets)
- π **I18n Ready**: install [@nuxtjs/i18n](https://i18n.nuxtjs.org/) Nuxt module, and you're ready to use Vuetify [internationalization](https://vuetifyjs.com/en/features/internationalization/) features
- π **Date Components**: use Vuetify components [that require date functionality](https://vuetifyjs.com/en/features/dates/) installing and configuring one of the [@date-io](https://github.com/dmtrKovalenko/date-io#projects) adapters
- π¬ **Auto-Import Vuetify Locale Messages**: add [Vuetify Locale Messages](https://vuetifyjs.com/en/features/internationalization/#getting-started) adding just the locales you want to use, no more imports needed
- βοΈ **Auto-Import Vuetify Composables**: you don't need to import Vuetify composables manually, they are automatically imported for you
- π¨ **Vuetify Blueprints**: use [Vuetify Blueprints](https://vuetifyjs.com/en/features/blueprints/) to quickly scaffold components
- π **Nuxt DevTools**: ready to inspect your Vuetify styles with the [Nuxt DevTools](https://github.com/nuxt/devtools) inspector
- π¦Ύ **Type Strong**: written in [TypeScript](https://www.typescriptlang.org/)
## π¦ Install
> Requires Vite, will not work with Webpack
```bash
npx nuxi@latest module add vuetify-nuxt-module
```
[](https://stackblitz.com/github/userquin/vuetify-nuxt-module)
## π¦ Usage
> `vuetify-nuxt-module` is strongly opinionated and has a built-in default configuration out of the box. You can use it without any configuration, and it will work for most use cases.
Add `vuetify-nuxt-module` module to `nuxt.config.ts` and configure it:
```ts
// Nuxt config file
import { defineNuxtConfig } from 'nuxt/config'
export default defineNuxtConfig({
modules: [
'vuetify-nuxt-module'
],
vuetify: {
moduleOptions: {
/* module specific options */
},
vuetifyOptions: {
/* vuetify options */
}
}
})
```
Read the [π documentation](https://nuxt.vuetifyjs.com/) for a complete guide on how to configure and use this module.
## π Full config
Check out the [types](https://github.com/vuetifyjs/nuxt-module/blob/main/src/types.ts).
The virtual modules can be found in [configuration.d.ts](https://github.com/vuetifyjs/nuxt-module/blob/main/configuration.d.ts) file.
## π License
[MIT](https://github.com/vuetifyjs/nuxt-module/blob/main/LICENSE) License Β© 2023-PRESENT [JoaquΓn SΓ‘nchez](https://github.com/userquin)