Ansora UI
The shared design system of the Ansora products — tokens, components, and the rules that hold them together.
Ansora UI is not an npm component library. It is a shadcn registry: you install a
component with the shadcn CLI and its source lands in your own project, under an
ansora/ directory so it can never overwrite an upstream file. What makes it look like
Ansora is not in the components but in the tokens (@ansora/tokens) — an upstream
Card or Table installed straight from ui.shadcn.com already renders in the Ansora
look.
Set up a project
Start from a fresh shadcn project (base = Base UI, preset nova), then install the
base item first — it brings the tokens, the stylesheet lines and the setup notes every
other item assumes:
pnpm dlx shadcn@4.23.0 init --base base --preset novaPoint components.json at the registry. It needs a token; ask for one and put it in
.env.local as ANSORA_REGISTRY_TOKEN:
{
"registries": {
"@ansora": {
"url": "https://ui-registry.ansora.vvy.dev/r/v1/{name}.json",
"headers": { "Authorization": "Bearer ${ANSORA_REGISTRY_TOKEN}" }
}
}
}pnpm dlx shadcn@4.23.0 add @ansora/base @ansora/conventions
pnpm dlx shadcn@4.23.0 add @ansora/status-pillRead the base page before anything else: @ansora/tokens and
@ansora/core are not on npm yet, and the two globals.css lines and the
transpilePackages entry it describes are not optional.
What is here
- Components — every item in the registry, each with live examples. The examples are the same fixtures the release gate photographs and measures, rendered through the same route, so what you see here is what was checked.
- Colour and Density —
the token values, read from
packages/tokens/src/tokens.ts. - Rules — the handful of rules that hold everywhere and what enforces each one.