Design · Components
The components.
30 primitives, in both Base UI and Radix flavors. Every specimen below is live; open a component for its variants, API, and source.
Actions
2 componentsInputs
5 componentsDisplay
14 componentsA small label for status, categories, or metadata.
A dot-grid indicator for connecting, running, and settled states.
Code changes as unified or split diffs, line by line.
A quiet aside on a colored rule, for notes, warnings, and errors in prose.
Info
Warning
Success
A numbered rail for processes that happen in order.
Install the package
One command adds the runtime and the styles.
Wrap your app
The provider carries the thread state.
Send a message
The thread streams from your backend.
Highlighted code on a field panel, with a title bar and a copy button.
export function debounce(fn, wait) { let timer; return (...args) => { clearTimeout(timer); timer = setTimeout(() => fn(...args), wait); };}One command in several dialects, with synced tabs and a copy button.
npm install @assistant-ui/reactA print-register data table with hairline rules and mono headers.
| Token | Value | Applies to |
|---|---|---|
--radius-control | 8px | Buttons, inputs, menu items |
--radius-surface | 10px | Cards, popovers, panels |
--radius-xl | 12px | Dialogs, large surfaces |
--radius-thread | 16px | The chat viewport |
A spec sheet of terms and details, one hairline per row.
- commandsRecord<string, string>
- Tab label to command line, in display order.
- storageKey?string
- Persists the selected tab and keeps every instance with the same key in sync.
- onValueChange?(value: string) => void
- Called when the user picks a tab.