Every component, as typed Go.
One page per constructor. Use the sidebar to jump between them; it tracks the page you're on.
Buttons & links
8 constructors
Button
Primary action element with size + variant slots.
Link
Typed anchor with external-link affordances.
CopyButton
Copies text from a target selector to clipboard.
ShortcutHint
Inline keyboard-shortcut chip.
ThemeToggle
Cycles data-color-scheme between dark/light/auto.
ThemePicker
Switches the whole page to a registered theme override and remembers the choice.
LanguageMenu
Links the current page in each of the app's languages, each named in itself.
Kbd
Semantic <kbd> primitive for keyboard input: pair with ShortcutHint for styled chips.
Tags & badges
3 constructors
Feedback
15 constructors
Banner
Full-width alert; optional dismiss + action.
Callout
Bordered prose call-out for tips or warnings.
Notification
Toast-style notification with icon + variant.
EmptyState
Zero-data placeholder with optional CTA.
Spinner
Indeterminate progress indicator.
SkeletonPresets
Shimmer placeholders while content loads.
SkeletonTimeline
Timeline-shaped placeholder: a dot, a name line, and two text lines per event — the shape ui.Timeline arrivals have.
SkeletonLine
One short shimmer bar — the loading twin of a breadcrumb trail or a one-line label.
PollingIndicator
Animated live-data heartbeat.
NetworkRetryBanner
Surface that appears when an island RPC fails.
OptimisticAction
Action that commits + can rollback on error.
ToggleAction
Three-state toggle: commit, untoggle, mutex groups.
NotificationBell
Bell icon with unread badge + popover (trigger + widget).
Progress
Native <progress> wrapper: determinate (Value set) or indeterminate (Value < 0).
Toast
Stacked notifications: client (data-cui-toast) or server (X-Gofastr-Toast header).
Layout
13 constructors
Card
Surface with optional header / footer; whole-card link when Href is set.
Container
Max-width wrapper with width tokens.
Stack
Vertical flex stack with gap token.
ListDetail
Scrollable list beside a routed detail slot; stacked on phones.
Grid
CSS Grid with min column width + gap tokens.
Cluster
Horizontal flex with wrap.
Center
Centers children horizontally + vertically.
Box
Polymorphic <div> with padding/surface tokens.
Divider
Horizontal or vertical rule.
AspectRatio
Maintains aspect ratio for media boxes.
Workbench
Inspector shell: a fixed-width rail that scrolls on its own beside a pane that fills the rest. An <iframe> in the pane fills it edge to edge. Stacks below 720px.
PaneHost
Master-detail shell: a primary pane plus openable side panes that collapse to an overlay drawer on narrow screens.
Sticky
Sticky-positioned wrapper.
Disclosure
4 constructors
Forms
32 constructors
Form
Form container with submit + validation.
FormField
Label + input + help text + error.
TextField
Typed labelled text input with built-in help and error wiring.
NumberField
Typed labelled number input with explicit bounds.
DateField
Typed labelled date input with native date bounds.
FormSection
Bordered group of related fields.
FormFrame
Record form in two columns: a wide main column beside a narrow side rail that drops under it when the form's own width is narrow — a drawer stacks, a full page sits side by side.
Select
Native <select> styled to match the theme.
Checkbox
Single boolean toggle.
CheckboxGroup
Grouped boolean options.
Radio
Single-select among grouped options.
Switch
On/off toggle that looks like a physical switch.
Textarea
Multi-line text input with autosize.
NumberInput
Numeric input with stepper buttons.
PasswordInput
Password with show/hide toggle.
SearchInput
Search field with leading icon + clear button.
RangeSlider
Min/max thumb pair.
Slider
Single-value slider.
TagInput
Free-form tag entry with chips.
Combobox
Type-ahead suggestion picker.
DatePicker
A calendar beside the native date input, for ranges, refused days and notes on days.
Multiselect
Multi-pick from a list with chips.
FilterChipBar
Active filter chip strip with per-chip dismiss RPC.
InputGroup
Input plus leading/trailing addon.
ValidationSummary
Form-top error roll-up.
ConditionalField
A field shown or hidden by another field's value — one value or any of a list; visible on first paint, hidden by the runtime until the watched field matches.
FormRepeater
Add/remove rows of fields.
Repeater
Generic repeatable group.
FilterRows
Rows of field, operator and value that a list's filter form submits as its query.
DateTimeField
A labelled date-and-time input (datetime-local) with help and error text.
SortableList
Drag + keyboard reorderable list: single list or linked kanban columns with version-aware 409 recovery.
FilterToolbar
Facet filters + search + sort in one GET form; the generated list-screen toolbar.
Data
26 constructors
DataTable
Sortable + paginated data table island.
Selection
A bar that acts on the checked rows below it; it shows only while a row is checked, with no script.
JSONViewer
Pretty-printed expandable JSON.
DiffViewer
Unified or split diff display.
CodeBlock
Plain code block (no highlight).
CodeTabs
One snippet in several languages behind a zero-JS tab strip.
Markdown
Render Markdown source.
Timeline
Vertical event timeline.
Avatar
User picture or initials, with an optional presence dot.
AvatarGroup
Stacked avatars with overflow chip.
Thumbnail
Square image preview for a table cell or a record's photo field.
ShortID
A long identifier's first characters, with a copy button for all of it.
EntryList
A dense, ranked list of links to read: title, source, and a meta line.
CommentThread
A discussion with replies nested under each comment.
ChangeList
What one edit changed, a field per row: the old value struck through, then the new one.
StatCard
Metric tile with trend.
MetricBand
Flat responsive band for a small set of related signals.
AnimatedCounter
Number that animates on appearance.
RatingInput
Star rating input bound to a radio group.
Rating
Read-only score: a testimonial's stars, a product's average.
Counter
Numeric counter with +/− buttons, client-side only.
StatStrip
One to six figures in one frame, divided by rules: a dashboard's headline numbers.
ColumnPicker
A list's Columns menu: show, hide and reorder columns through links, so the choice lives in the URL.
DetailList
Label/value description list for record detail views.
FactBox
Single labelled fact: a compact label + value pair.
TerminalBlock
Terminal transcript with a labelled header and OK/output lines.
Charts
7 constructors
Media
6 constructors
OptimizedImage
Image with width/height + lazy + srcset.
Icon
Search Feather and Lucide icons by name or category. Click an icon to copy its name.
Gallery
Image grid with lightbox.
Lightbox
Modal viewer for images.
Carousel
Horizontal slider with snap.
PipelineImage
Image processed through the framework's image pipeline.
Inputs
6 constructors
FileUpload
File picker with a drop zone; chosen names are listed and announced.
FileDropzone
Drag-and-drop file upload with an image thumbnail strip.
TimePicker
Hour + minute picker.
ColorPicker
Native swatch picker.
ColorField
Swatch beside a text input holding the same value. The text input is the source of truth, so values a native picker cannot represent survive; the headless colour sync keeps the two one value.
Toggle Switch
Boolean toggle: client-side signal flip, no RPC.
Wizards
2 constructors
Optimistic UI
4 constructors
Optimistic Inline Edit
Edit a field + save; the button flips optimistically, rolls back + shakes on rejection.
Optimistic Create
Click Add → server appends a row and returns authoritative list HTML.
Optimistic Delete + Confirm
Each row's Delete opens a themed ConfirmAction modal; on confirm the list swaps to the shorter authoritative list.
Optimistic Slow + Failure
Pending state, commit after delay, rollback + shake on failure, with a NetworkRetryBanner.
Clientside Interactivity
9 constructors
Click to Update
Click a button → server returns a value → it appears on screen without reloading.
Click to Open Popup
Click a button → server confirms → a modal pops up. No JavaScript needed.
Submit Without Reload
Submit a form and see the result inline: the page never reloads.
Redirect After Action
Click a button → server confirms → you land on a new page, no full reload.
Scroll Reveal
Elements fade in as they scroll into view: IntersectionObserver, no JS needed.
Signal Animate
Toggle a CSS class when a signal changes; the same primitive drives several transition styles. Each example is one signal + one class.
Dropdown
Click-toggle dropdown with click-outside dismiss and Escape to close.
Section Menu
Grouped navigation: a sticky rail on desktop whose group headers pin while their links scroll, with an optional filter; on mobile (< 900px) a pill naming the current page opens a bottom sheet (backdrop + drag-down close + focus trap). Powers the docs + components nav.
Signal Store
Typed shared state: one producer renames the company, every bound consumer updates client-side: no per-consumer request.
Overlays
4 constructors
Modal
Center-mounted dialog: backdrop, focus trap, Escape, URL deeplinking.
Drawer
Edge-mounted sliding panel: same dismiss affordances as Modal, plus deeplinking.
DrawerBar
The bar across the top of an intercepted drawer: close, the layer's path in mono, copy link, then actions.
BottomSheet
Mobile-friendly bottom-anchored variant of Drawer with drag-to-dismiss.
Marketing
4 constructors