Skip to content

Why vue-multiple-themes?

Most Vue theming solutions only handle light/dark toggling. vue-multiple-themes is a complete multi-theme engine designed for production applications that need:

The Problem

  • Design systems require multiple brand themes, not just light/dark
  • White-label SaaS products serve multiple brands from one codebase
  • Accessibility demands WCAG-compliant contrast ratios — not just "looks dark enough"
  • TailwindCSS needs RGB channel variables for opacity modifiers (bg-primary/50)
  • Theme persistence across sessions, with OS preference respect

The Solution

vue-multiple-themes solves all of these with a single, zero-dependency package:

CapabilityHow
Multi-themeDefine unlimited themes with 17+ semantic color tokens
TailwindCSS v3 & v4Dedicated plugins with full bg-vmt-primary/50 opacity support
WCAG complianceBuilt-in contrastRatio(), autoContrast(), ensureContrast()
White-labelcreateBrandContext() isolates theme state per namespace
PersistencelocalStorage / sessionStorage with OS preference detection
GeneratorgenerateThemePair('#brand-color') → WCAG-compliant light+dark pair
SSR-safeAll utilities work server-side; DOM access is guarded
Tree-shakeableImport only what you need — 20+ individually exported utilities

Who Uses It?

vue-multiple-themes is designed for:

  • Enterprise applications with complex theming requirements
  • Design systems that need semantic color tokens
  • White-label SaaS platforms serving multiple brands
  • Micro-frontends where multiple theme engines coexist
  • Any Vue 3 project that wants more than just light/dark mode

Released under the MIT License.