| Primitives | Button (primary, secondary, ghost, danger; sm, md, lg; loading; shape="pill"), buttonClassName() for links, ButtonGroup, CloseButton, ToggleButton, Input (start and end content), Textarea (autoGrow), Field, Fieldset, Checkbox, CheckboxGroup, RadioGroup (plain or cards), Switch, Select, Slider (one value or a range), Link, Text (each style on the Typography page as a variant: hero to caption, code and kbd; tones, truncate, as), Kbd, Separator |
| Typography | Truncate (text cut to its room at the end, in the middle for file names and hashes, or at the start for paths; the full text in a Tooltip when it's cut), Code, CodeBlock, Snippet, Prose (styles rendered Markdown or HTML, at chat or article size), Callout (a note set apart from the text: six tones, soft, outline or bar, collapsible), InlineEdit (text you click to edit in place; Enter saves, Escape cancels, async saves) |
| Actions | CopyButton, SegmentedControl, ToggleButtonGroup (one or several on), Toolbar + ToolbarSeparator (arrow keys across its controls) |
| Inputs | Form (the browser's checks, your own and the server's errors, under each field; useFormStatus), Wizard (a form in pages: a Steps strip, checks per step, Back and Next), MarkdownEditor (a formatting toolbar with shortcuts, Write and Preview tabs or a split view, pasted images uploaded), NumberField, SearchField, InputOTP, ColorField, DateField and TimeField (typed in segments, in the locale's order), TimeRangeField (a start and an end time), DurationField (hours and minutes, or days to seconds; formatDuration(), parseDuration()), TagInput (several values as tags, typed or picked from suggestions), PasswordInput (show and hide, a strength meter, a checklist of rules; passwordStrength()), MentionInput (@ mentions and / commands in a list at the caret; useMentions for any text box), SignaturePad (sign with a mouse, finger or pen, or type instead; sent with a Form) |
| Choices | Combobox, Rating (pick a score or show one), ChoiceCard, ListBox (one or many, on the page), TreeView (rows that open, select or check, with children loaded on demand), TransferList (two lists with buttons to move items between them, searchable and orderable) |
| Pickers | Calendar, DatePicker, RangeCalendar, DateRangePicker (with presets), ColorPicker, ColorArea, ColorSlider, ColorSwatchPicker, FileDropZone, ImageCropper (move and zoom a picture under a frame for an avatar or a banner; the cropped image through a ref or with a Form), UploadList (files uploading with progress, retry, cancel and remove; useUploadQueue) |
| Feedback | Alert, Badge, ProgressBar, ProgressCircle, Meter (an amount in a range, toned by thresholds), Spinner, Skeleton, SkeletonRows, Toaster + toast() (sonner: stacked, swipeable, with actions and promises), Tooltip, Banner (an announcement bar across the top, dismissible and remembered) |
| Overlays | Dialog, ConfirmDialog, Drawer, BottomSheet (a swipeable sheet from the bottom of a phone screen, with snap points), Popover, HoverCard (a preview when the pointer rests on a link), Menu + MenuItem, CommandPalette, ContextMenu (right-click, long press or Shift+F10, with the same items), Tour (steps that point at parts of the page, with an optional spotlight) + Coachmark, NavigationMenu + NavigationMenuItem + NavigationMenuLink (a site's top nav with dropdown panels and mega-menus), NotificationCenter (a bell with an unread count that opens a popover inbox) + NotificationList |
| Navigation | Tabs, Accordion, Disclosure, Breadcrumbs, Pagination, Steps, NavList + NavItem, TableOfContents (a page's headings as links, the one in view marked as it scrolls) |
| Data display | Table (sorting, selection), DataGrid (thousands of rows: search, column filters, sorting, resizable columns, selection; renders only the rows in view), Stat, Countdown (the time left as segments or one line, read out once a minute), RelativeTime ("3 minutes ago", kept up to date), FileTree, JsonViewer (a JSON document as a tree of rows coloured by type: search, copy a value or its path), EmptyState, Tag, ColorSwatch, Avatar, AvatarGroup, User, Image (a placeholder while it loads, a fallback if it fails, ratio, caption), Timeline + TimelineItem, CommentThread (comments nested by parentId, with reply, edit, delete and emoji reactions), DescriptionList + DescriptionItem, Carousel + CarouselSlide (scroll-snap, arrows, dots, autoplay), Lightbox (a fullscreen viewer for one image or a gallery: zoom, pan, swipe, thumbnails), SortableList (reorder by dragging or with the keyboard), Kanban (cards dragged within and between columns, or moved with the keyboard; WIP limits), Gantt (a timeline of tasks with groups, progress, dependencies and a today line; bars moved and resized by pointer or keyboard), DiffViewer (code diffs, unified or side by side, from two strings or a patch), ActivityHeatmap (a calendar of daily counts in shaded squares), AreaChart (stacked or overlaid areas), PieChart (shares written on the slices), ScatterChart (points and bubbles on two numeric axes), MediaPlayer (audio and video with the library's own controls), QRCode (drawn as one SVG path, with its own encoder; encodeQR()) |
| AI | PromptInput (attachments, stop while streaming) + PromptSuggestion, ChatConversation (follows the newest message, jump to latest), ChatMessage + ChatMessageActions, ChatLoader, ChatTool (a tool call with its status, input, output and approval), ChainOfThought, ChatSource + ChatSources, TextShimmer, Markdown (a safe renderer for answers as they stream, code in CodeBlock), LogViewer (streaming terminal output with ANSI colours; follows the newest line, jump to latest, search, line numbers; renders only the lines in view) |
| Layout | Card, SettingsRow, Stack, ScrollShadow, ScrollArea (thin theme-coloured scrollbars that show on hover or while scrolling), VisuallyHidden, AspectRatio, Affix (sticks a toolbar or bar to the top or bottom while you scroll, and knows when it is pinned), Splitter + SplitterPanel + SplitterHandle (panels you resize by dragging or with the arrow keys, collapsible, remembered), VirtualList (renders only the rows in view, for 10,000 rows, logs and infinite feeds), Portal (renders children into document.body or another element, out of an overflow: hidden parent), FocusTrap (keeps Tab inside your own overlay and gives focus back after; the native dialogs don't need it), Watermark (text or a logo tiled over drafts and previews), Collapsible + CollapsibleTrigger + CollapsibleContent (show and hide under your own trigger, animated and wired up) |
| Marketing | SiteHeader, SectionHeading, Chip, DotGrid, Marquee (logos, figures or tags that travel endlessly, with a pause button; stands still with reduced motion) |