Summary
Enable v0 system composables to work together as a unified configuration layer via createV0Plugin or similar. Each system composable currently operates independently — they should share configuration and be cross-composable aware.
System Composables (v0.2.0 scope)
| Composable |
Purpose |
Adapter Pattern |
Integration Status |
useTheme |
Theme management, CSS variables |
✅ |
#113 — needs RGB decomposition, auto on-colors, system detection, persist via useStorage |
useLocale |
i18n with interpolation |
✅ |
#114 — provide locale to useDate, persist via useStorage, RTL detection |
useDate |
Date manipulation |
✅ |
#116 — add date-fns + Luxon adapters, consume useLocale |
useStorage |
Persistent storage |
✅ |
#117 — shared persist() API, namespace prefixing, SSR fallback |
useBreakpoints |
Responsive detection |
❌ |
#118 — add mobileBreakpoint, *AndUp/*AndDown helpers, SSR support |
Deferred
Goals
Example Usage
import { createV0 } from '@vuetify/v0'
const v0 = createV0({
theme: { defaultTheme: 'light', themes: {...} },
locale: { defaultLocale: 'en', messages: {...} },
date: { adapter: 'dayjs' },
storage: { adapter: 'localStorage', namespace: 'app' },
breakpoints: { xs: 0, sm: 600, md: 960, lg: 1280, xl: 1920 },
})
app.use(v0)
Related Issues
Summary
Enable v0 system composables to work together as a unified configuration layer via
createV0Pluginor similar. Each system composable currently operates independently — they should share configuration and be cross-composable aware.System Composables (v0.2.0 scope)
useThemeuseLocaleuseDateuseStorageuseBreakpointsDeferred
useLogger— closed ([Integration] useLogger system composable integration #115), doesn't need system integrationusePermissions— moved to v1.0.0 ([Integration] usePermissions system composable integration #119)Goals
createV0Pluginor similarExample Usage
Related Issues