origam

origam — a Vue 3 design system with multi-theme design tokens, CSS-first components and TypeScript types.
9,732
Install
npm install origam
Latest Version:2.37.10
Vue:3
License:MIT
Last Updated:Oct 22, 2026
Links: GitHub  ·  npm
Maintainer: aprioul

origam

A Vue 3 design system with multi-theme design tokens, CSS-first components and TypeScript types.

📖 Full documentation & interactive theme builder: https://origam.dev (coming soon) · GitHub repository

Installation

npm install origam      # or: pnpm add origam, or: yarn add origam
Peer dependency Required Used by
vue ^3.5 Always.
vue-i18n optional Locale composable.
vue-router optional Link components.
shiki optional OrigamCode syntax highlight.

Quick start

// main.ts
import { createApp } from 'vue'
import { createOrigam } from 'origam'

import 'origam/tokens/css/primitive'
import 'origam/tokens/css/light'
import 'origam/tokens/css/utilities'

import App from './App.vue'

const origam = createOrigam()

createApp(App).use(origam).mount('#app')
<template>
  <origam-btn color="primary" text="Save" />
</template>

Nuxt

The package ships an official Nuxt module:

// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['origam/nuxt']
})

Theming

  • Multi-theme, two axes — data-theme (brand) × data-mode (light/dark), driven by design tokens (primitive → semantic → component tiers). prefers-color-scheme is honoured in auto mode.
  • Props-first — a theme is an object configuring component props first (variant, rounded, density, elevation, …), then semantic tokens; raw CSS vars are the last resort.
  • CSS-first components — modern CSS (grid, :has(), container queries, color-mix()) before JavaScript, with feature-detection fallbacks.

Token stylesheets are exposed as dedicated entries: origam/styles (full aggregate), origam/tokens/css/* and origam/tokens/scss/* (granular), plus typed sub-exports (origam/components, origam/composables, origam/enums, origam/types, …).

Links

License

MIT © Prioul Arnaud

Related Packages

@datametria/vue-components

DATAMETRIA Vue.js 3 Component Library with Multi-Brand Theming - 51 components +...

9,528
@1337exp/taoui

Design-token driven Vue 3 / Nuxt component library: one size scale, dark and lig...

6,129 0
@bquery/ui

Production-grade web component library for the bQuery project

1,770
@eos-ui/tokens

eos design tokens: CSS custom properties, typed values and a theme generator wit...

364 0
@eos-ui/vue

eos: a component library for Vue.

308 0

Version History

Version Released License
2.37.10 MIT
2.37.9 MIT
2.37.8 MIT
2.37.7 MIT
2.37.6 MIT