Skip to content

[Feature] Integration with v0 system composables #112

@johnleider

Description

@johnleider

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

  • Unified plugin initialization via createV0Plugin or similar
  • Shared configuration object for all system composables
  • useDate consumes useLocale for locale-aware formatting
  • useTheme + useLocale persist preferences via useStorage
  • Single provide/inject point for all system context

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions