Esta página se muestra en inglés. Una traducción al español está en curso.
ScriptsApr 11, 2026·2 min de lectura

Vuetify — Material Design Component Framework for Vue

Vuetify is the most popular Material Design component framework for Vue 3. 80+ beautifully crafted components following Material Design 3 guidelines with SSR support, theming, treeshaking, and accessibility baked in.

Introducción

Vuetify is the most popular Material Design component framework for Vue. Created by John Leider and community-maintained, it provides 80+ components that follow the Material Design 3 guidelines exactly. Used by Siemens, Telus, and many enterprise Vue apps. Currently v3 targeting Vue 3.

What Vuetify Does

  • 80+ components — Button, DataTable, Dialog, Form inputs, Stepper, Snackbar
  • Material Design 3 — aligned with Google guidelines
  • Grid system — 12-column responsive layout
  • Theming — light/dark + custom themes via SASS variables or runtime
  • SSR — Nuxt module first-class
  • i18n — built-in locale system
  • Date pickers — multiple adapters (date-fns, Luxon, dayjs)
  • Treeshaking — auto-import via vite-plugin-vuetify

Architecture

v3 rebuilt from scratch on Composition API with TypeScript. Styles ship as SASS + generated CSS; runtime theme via CSS variables. Uses provide/inject for ConfigProvider-style globals.

Self-Hosting

Client library.

Key Features

  • 80+ components
  • Material Design 3 aligned
  • Runtime theming
  • Built-in grid system
  • Vue 3 Composition API
  • TypeScript-first
  • SSR (Nuxt) support
  • Treeshakeable via plugin
  • i18n + RTL support

Comparison

Library Design Vue Version Components
Vuetify Material Design 3 80+
Element Plus Desktop flat 3 60+
PrimeVue Multi-theme 3 90+
Naive UI Flat 3 80+
Quasar Multi-platform 3 70+

FAQ

Q: v2 vs v3? A: v3 was rewritten specifically for Vue 3 + Composition API. v2 no longer receives new features. Migration requires updating imports and some props.

Q: What about bundle size? A: Enable autoImport: true with vite-plugin-vuetify; tree-shaking then bundles only the components you actually use.

Q: Custom themes? A: Use createVuetify({ theme: { themes: { light: { colors: { primary: "#1976d2" } } } } }), or override via CSS variables.

Sources & Credits

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados