An open source design system that's fully customizable and agent ready.
Open source · Built on React Aria Components and TypeStyles · GitHub
pnpm add @var-ui/react @var-ui/core @var-ui/icons react react-dom react-aria-componentsWhy teams choose Var UI
Compare us to shadcn, Mantine, or Reshaped: Var UI pairs a typed token system with multi-framework output and a docs kit you can fork for your own design system site.
TypeStyles-first
Component recipes and design tokens replace ad-hoc CSS files. Breakpoints, themes, and variants stay type-safe.
Accessibility built in
React bindings use React Aria Components for keyboard, focus, and screen-reader behavior out of the box.
React, Astro, or HTML
Ship with @var-ui/react, @var-ui/astro, or core HTML recipes — the same tokens and visuals everywhere.
Theme system
createDesignTheme() drives color modes, presets, and CSS variables. Swap palettes without rewriting components.
Docs kit
@var-ui/docs powers this site: search, TOC, markdown views, and optional component catalogs.
Agent-ready CLI
npx @var-ui/cli init wires AGENTS.md, component search, and generated docs for coding assistants.
See it in action
Switch themes and frameworks with the controls below. The same components render as React, Astro markup, or core HTML recipes.
Invite a teammate
Deploy queued
Notification preferences
No projects yet
Create your first project to get started.
Release notes
Published
Themes pin fixed-tone subtrees with modes and data-surface (SURFACE_ATTRIBUTE). See the theming guide for details.
import { Button } from '@var-ui/react';Layout preview
A
B
Explore
Jump into guides, component demos, theming docs, or the interactive playground.
Installation, providers, and architecture guides for new projects.
Getting started → ComponentsLive demos for every exported component with React, Astro, and HTML snippets.
Browse catalog → ThemingTokens, themes, color modes, and CSS variables for brand customization.
Customize → PlaygroundTune tokens and preview themes interactively before committing to a palette.
Open playground →