Skip to content

vuecs

Themeable Vue 3 component library with design tokens, runtime palette switching, and SSR-safe Nuxt integration.

Primary palette

Neutral palette

Click swatches to recolor every component on the page in real time — powered by setPalette().

Built for real apps

🎨

Themeable

Layered theme resolution with structured variants, compound variants, and runtime overrides.

🧩

Design tokens

22 Tailwind palettes, 6 semantic scales. Switch palette at runtime — no rebuild.

🌗

Dark mode

Tokens flip automatically under .dark — every component follows.

🚀

Nuxt-ready

SSR-safe color mode and palette via @vuecs/nuxt — zero FOUC on first paint.

🛠️

Multi-framework

Drop-in themes for Tailwind v4, Bootstrap v5, Bootstrap v4, Font Awesome.

🔒

TypeScript-first

Augmentable theme & defaults interfaces — autocomplete for component names and slot keys.

From zero to first component

Three steps. Tailwind v4 + design tokens come pre-wired.

npm install @vuecs/core @vuecs/theme-tailwind @vuecs/design

@vuecs/nuxt

Built for Nuxt

SSR-safe palette and color-mode plumbing — server-rendered classes match the client on first paint, no flash, no hydration mismatch.

  • usePalette() — switch palettes at runtime
  • useColorMode() — VueUse-backed dark/light/system, cookie-driven
  • Auto-imports — composables, zero boilerplate
  • SSR plugins — palette and color-mode injected into <head> before paint
Read the Nuxt guide →
nuxt.config.ts
// nuxt.config.ts
export default defineNuxtConfig({
    modules: ['@vuecs/nuxt'],
    vuecs: {
        palette: { primary: 'green', neutral: 'zinc' },
        // colorMode: true (default) — set false to opt out
    },
});

Released under the Apache 2.0 License.