Introduction
The internal component library for immit apps.
@immit/ui is the shared component library for the immit apps — www,
desktop, and the extension. It is a workspace package, internal to this
repo; it is not published. This site shows every component with a live
example and its source, and the Design Tokens page
renders the shared palette straight from the code.
The components track the shadcn registry as a base and extend it with
immit's semantic tokens and variants — same anatomy, our design system on
top. Where a slot deliberately diverges from registry semantics
(secondary), the tokens page records it.
Usage
Import each component from its own path:
import { Button } from '@immit/ui/button'Rules
- Check this library first. Before you write new UI, look for a component that matches the concept. If one exists, use it.
- Need a different look? Add a variant, not a new component.
Components expose
cvavariants. If no variant fits, add one here so every app gains it. - App-local components compose these parts. A feature component in
apps/*reads as an arrangement of@immit/uiparts plus domain logic. Bespoke Tailwind is for layout between components only.