Skip to main content

vuetify0

Build with @vuetify/v0 headless composables and components for Vue 3. Use when creating selection state (single, multi, grouped, stepped), form validation, tab/dialog/popover UI, provide/inject context, registries, virtual scrolling, pagination, keyboard shortcuts, resize observers, theming, breakpoints, or SSR-safe browser detection. Triggers on v0, vuetify0, headless components, or WAI-ARIA patterns.

Informações da origem

Repositório
spring-ai-alibaba/DataAgent
Última atividade na origem
4 de julho de 2026 às 15:53
Idioma detectado do SKILL.md
inglês
Estrelas
2.752
Forks
655

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
vuetify0
description
Build with @vuetify/v0 headless composables and components for Vue 3. Use when creating selection state (single, multi, grouped, stepped), form validation, tab/dialog/popover UI, provide/inject context, registries, virtual scrolling, pagination, keyboard shortcuts, resize observers, theming, breakpoints, or SSR-safe browser detection. Triggers on v0, vuetify0, headless components, or WAI-ARIA patterns.
# Vuetify0 - Headless Composables & Components Transform Vue 3 apps with unstyled, logic-focused building blocks for design systems. ## Quick Start ```bash pnpm install @vuetify/v0 ``` No global plugin required. Import only what you need: ```ts import { createSelection } from '@vuetify/v0/composables' import { Tabs } from '@vuetify/v0/components' ``` ## Core Decision Tree **Before writing custom logic**, check if v0 already provides it: | Need | Use | Guide | |------|-----|-------| | Single item selection | `createSingle` | [Single selection patterns](references/selection-patterns.md#single) | | Multi-item selection | `createSelection` | [Multi selection patterns](references/selection-patterns.md#multi) | | Selection with "select all" | `createGroup` | [Group patterns](references/selection-patterns.md#group) | | Step wizard / carousel | `createStep` | [Stepper patterns](references/selection-patterns.md#step) | | Form validation | `createForm` | [Form patterns](references/form-patterns.md) | | Shared state (provide/inject) | `createContext` | [Context patterns](references/context-patterns.md) | | Browser utilities | See utilities | [Browser & DOM patterns](references/browser-patterns.md) | **Full API reference**: See [REFERENCE.md](references/REFERENCE.md) ## Component Architecture All components are **headless** (unstyled) and follow WAI-ARIA patterns: ```vue <script setup> import { Tabs } from '@vuetify/v0/components' </script> <template> <Tabs.Root v-model="active"> <Tabs.List> <Tabs.Item value="overview">Overview</Tabs.Item> </Tabs.List> <Tabs.Panel value="overview">Content</Tabs.Panel> </Tabs.Root> </template> ``` **Available components**: Dialog, Tabs, ExpansionPanel, Checkbox, Radio, Popover, Pagination **Component examples**: See [component-examples.md](references/component-examples.md) ## Essential Patterns ### Selection State ```ts // Single selection (tabs, theme picker) const single = createSingle({ mandatory: 'force' }) // Multi-selection (tags, filters) const selection = createSelection({ multiple: true }) // Group with "select all" (data tables) const group = createGroup() ``` ### Context Sharing ```ts // Type-safe provide/inject const [useTheme, provideTheme] = createContext<Theme>('Theme') ``` ### Form Validation ```ts const form = createForm() form.register({ id: 'email', rules: [required, email] }) ``` ## Anti-Patterns **Don't reinvent these wheels:** ❌ **Custom selection logic** → Use `createSelection` ❌ **Manual provide/inject** → Use `createContext` ❌ **SSR checks** → Use `IN_BROWSER` constant **Detailed anti-patterns**: See [anti-patterns.md](references/anti-patterns.md) ## Development Tools **Generate common patterns:** ```bash python scripts/scaffold_pattern.py --type selection --output ./composables ``` **Check for anti-patterns:** ```bash python scripts/check_patterns.py ./src ``` **Vuetify MCP** for structured API access: ```bash claude mcp add vuetify-mcp https://mcp.vuetifyjs.com/mcp ``` ## Resources - **Detailed examples**: [references/component-examples.md](references/component-examples.md) - **Advanced patterns**: [references/advanced-patterns.md](references/advanced-patterns.md) - **Migration guide**: [references/migration-guide.md](references/migration-guide.md) - **Full API**: [references/REFERENCE.md](references/REFERENCE.md) - **Live docs**: https://0.vuetifyjs.com
Ver no GitHub