Theme editor

Re-theme every component live, then export the tokens.

Theme editor
0.625rem
Surface & semantic
--background
--foreground
--card
--card-foreground
--popover
--popover-foreground
--primary
--primary-foreground
--secondary
--secondary-foreground
--muted
--muted-foreground
--accent
--accent-foreground
--destructive
--border
--input
--ring
Chart series
--chart-1
--chart-2
--chart-3
--chart-4
--chart-5
Loading saved theme…
Live preview
These react to the editor instantly — and so does every other page, through the real :root token cascade.
DefaultSecondaryOutlineMuted

Providers

The two app-wide providers from @package/web-ui — theming and data — that wrap every route.

  • ThemeProvider
  • QueryProvider
ThemeProvider
Owns the .dark class and persists the color-scheme preference. The editor's light/dark toggle drives it directly.
PreferencesystemResolvedlight
QueryProvider
The shared React Query client provider. Wraps the app so any route can use typed queries and mutations — the data layer beside the design layer.
This gallery has no server data, so the client is present but idle — it's here to show the provider every real app mounts.