Documentation Index
Fetch the complete documentation index at: https://mintlify.com/vuetifyjs/vuetify/llms.txt
Use this file to discover all available pages before exploring further.
Upgrading to v4
Vuetify 4.0.0 introduces significant improvements and optimizations while maintaining the core principles that make Vuetify powerful. This guide will help you migrate your application from Vuetify 3 to Vuetify 4.Prerequisites
Before starting the migration, ensure your project meets these requirements:- Vue.js: Version 3.5.0 or higher
- Node.js: Version 24.11.1 or higher
- TypeScript: Version 4.7 or higher (optional but recommended)
- Build Tool: Vite or Webpack with the appropriate Vuetify plugin
Migration Steps
{
"dependencies": {
"vuetify": "^4.0.0",
"vue": "^3.5.0"
},
"devDependencies": {
"vite-plugin-vuetify": "^2.1.0"
}
}
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vuetify from 'vite-plugin-vuetify'
export default defineConfig({
plugins: [
vue(),
vuetify({
autoImport: true,
styles: {
configFile: 'src/styles/settings.scss',
},
}),
],
})
Review your Vuetify instance creation. The basic structure remains the same, but verify your configuration:
// src/plugins/vuetify.ts
import { createVuetify } from 'vuetify'
import * as components from 'vuetify/components'
import * as directives from 'vuetify/directives'
export default createVuetify({
components,
directives,
theme: {
defaultTheme: 'light',
},
})
// ✅ Recommended - Tree-shakable
import { VBtn, VCard } from 'vuetify/components'
// ✅ Also valid - Auto-import with plugin
// Components automatically available when using vite-plugin-vuetify
// Main styles
import 'vuetify/styles'
// Or specific style bundles
import 'vuetify/styles/core'
import 'vuetify/styles/utilities'
import 'vuetify/styles/colors'
// .eslintrc.js
module.exports = {
plugins: ['vuetify'],
rules: {
'vuetify/no-deprecated-components': 'error',
'vuetify/no-deprecated-props': 'error',
},
}
// src/styles/settings.scss
@use 'vuetify/settings' with (
$utilities: (
'rounded': true,
'elevation': true,
),
);
Component-Specific Changes
Date & Time Components
Date adapter imports have changed:Lab Components
Some lab components may have graduated to stable:TypeScript Support
Vuetify 4 includes enhanced TypeScript support. Update your type declarations:Performance Optimizations
Vuetify 4 includes several performance improvements:- Automatic Tree-Shaking: Components are automatically tree-shaken when using Vite
- Smaller Bundle Sizes: Optimized component code reduces overall bundle size
- Improved SSR: Better server-side rendering support
- CSS Optimization: Enhanced CSS generation and minification
Getting Help
If you encounter issues during migration:- Discord Community: Join the Vuetify Discord for community support
- Issue Tracker: Report bugs at issues.vuetifyjs.com
- Documentation: Visit vuetifyjs.com for comprehensive guides
- GitHub Discussions: Ask questions and share solutions
Next Steps
After successfully migrating to Vuetify 4:- Explore new features and components
- Review the Release Notes for detailed changes
- Optimize your bundle size using the build analysis tools
- Consider adopting new patterns and best practices
- Review the Long-term Support policy
Keep your dependencies up to date to receive bug fixes, security patches, and new features.