Reference
Compatibility & Support Matrix
Canonical answers for what is supported, tested, and production-ready — covering all frameworks, adapters, and libraries.
Data Verification
Last verified: September 24, 2026 · Themvora v2.0.0
All data sourced from actual package.json peer dependencies and source code audits. For feature-by-feature caveats, visit Known Limitations.
Framework Package Compatibility
| Package | Framework | Version | SSR | Zero-flash | Persistence | Scrollbar | Status |
|---|---|---|---|---|---|---|---|
| @themvora/core | Framework-agnostic | N/A | N/A | Manual | None | None | Stable |
| @themvora/react | React | ^19.0.0 | Client-only | Manual | LocalStorage | Component | Stable |
| @themvora/next | Next.js | ^15.5.22 | Full | Auto | Cookie | Provider prop | Stable |
| @themvora/vue | Vue 3 | ^3.4.0 | Client-only | Manual | LocalStorage | Component | Stable |
| @themvora/svelte | Svelte 5 | ^5.0.0 | Client-only | Manual | LocalStorage | Component | Stable |
| @themvora/solid | Solid | ^1.8.0 | Client-only | Manual | LocalStorage | Component | Stable |
| @themvora/angular | Angular | >=17.0.0 | Helpers | Manual | LocalStorage | Directive | Stable |
| @themvora/web | Web Components | N/A | Client-only | Manual | LocalStorage | Element | Stable |
| @themvora/tailwind | Tailwind CSS v4 | ^4.0.0 | N/A | N/A | None | None | Stable |
| @themvora/astro | Astro | ^5.0.0 | Full | Auto | Cookie | Provider prop | Stable |
| @themvora/nuxt | Nuxt 4 | >=3.10.0 | Full | Auto | Cookie | Provider prop | Stable |
| @themvora/remix | Remix | ^2.16.0 | Full | Manual | Cookie | Component | Stable |
Library Adapter Compatibility
| Library | Package | Architecture | Host Frameworks | CSS Vars / Type | SSR Safe |
|---|---|---|---|---|---|
| shadcn/ui | @themvora/shadcn | CSS-variable | React+Vue+Svelte+Solid+Angular | --background, --primary, --card, etc. (no shared prefix) | ✓ |
| Bootstrap | @themvora/bootstrap | CSS-variable | React+Vue+Svelte+Solid+Angular | --bs-* | ✓ |
| daisyUI | @themvora/daisyui | CSS-variable | React+Vue+Svelte+Solid+Angular | --color-* | ✓ |
| Open Props | @themvora/open-props | CSS-variable | React+Vue+Svelte+Solid+Angular | --color-*, --brand, --size-*, --shadow-*, --radius-*, --font-* | ✓ |
| MUI | @themvora/mui | Generated-theme | React | Theme object | ✓ |
| Chakra UI | @themvora/chakra | Generated-theme | React | Theme object | ✓ |
| Ant Design | @themvora/antd | Generated-theme | React | Theme object | ✓ |
| Mantine | @themvora/mantine | Generated-theme | React | Theme object | ✓ |
| UnoCSS | @themvora/unocss | Preset | All | References core --theme-* vars | ✓ |
Legend
- SSR:
- Full = server resolves theme and renders shell; Helpers = exports bootstrap utils (user wires); Client-only = runtime created client-side
- Zero-flash:
- Auto = blocking script injected automatically; Manual = user must inline script; None = not applicable
- Persistence:
- Cookie = SSR-readable; LocalStorage = client-only; Both = supports either
- Adapter types:
- CSS-variable = writes :root CSS vars; Generated-theme = builds native library theme object; Preset = build-time integration
Important Notes
- MUI, Chakra, Ant Design, Mantine: React-only. No framework subpaths exist. The pure theme builders (createMuiTheme, etc.) are framework-neutral, but runtime integration requires React.
- shadcn/ui, Bootstrap, daisyUI, Open Props: Framework-neutral CSS-variable adapters. Exports /react /vue /svelte /solid /angular /factory.
- Next.js, Astro, Nuxt: Fully automated zero-flash SSR. Server reads cookies, emits blocking script, renders theme before hydration.
- Remix: SSR-capable but requires manual tv-scrollbar class on <html> element.
- Angular: Uses own bootstrap implementation (createBlockingScriptContent), not core's serializeThemeBootstrapScript.
- Cross-window sync: All framework packages support BroadcastChannel and storage events (implemented in core).