All components
83 components. 49 render in a Server Component with no client JavaScript; the other 34 declare 'use client' because they genuinely need state, effects or event handlers.
Layout (9)
Aspect ratio
serverReserves space at a fixed ratio so media cannot cause layout shift.
Bento grid
serverCompound component: `BentoGrid` and `BentoGrid.Item`.
Box
serverThe lowest-level layout primitive: a styled `div` you can retag.
Container
serverCentres content and caps its width, with a responsive gutter.
Divider
serverA separator.
Grid
serverResponsive grid at zero runtime cost. Responsive `cols` become inline custom properties that the static stylesheet reads inside fixed media queries — no style computation, no CSS generation, SSR-identical.
Scroll area
serverA styled overflow container.
Section
serverCompound component: `Section` and `Section.Header`.
Stack
serverFlex container with a token-based gap. `Flex` is the horizontal alias.
Typography (5)
Actions (4)
Button
serverA button.
Button group
serverGroups related buttons. `attached` joins them into a single segmented control.
Copy button
clientCopy to clipboard, with a transient confirmation.
Icon button
serverA square button holding a single icon.
Forms (17)
Calendar
clientA month grid, keyboard-navigable per the WAI-ARIA Authoring Practices grid pattern.
Checkbox
serverA checkbox built on the native input.
Combobox
clientA filterable select, following the ARIA combobox pattern.
Date picker
clientA text input with a `Calendar` in a popup.
Field
clientWires a label, hint and error message to a form control.
File upload
clientA dropzone over a real `<input type="file">`.
Input
serverA text input. Native by design: no wrapper element, so `type`, `pattern`, `autoComplete`, form validation and the browser's own UI all keep working.
Label
serverA form label.
Otp input
clientA one-time-code field: one box per character, one string of state.
Password input
clientA password field with a reveal toggle and an optional strength meter.
Radio group
serverA group of radios.
Rating
clientA star rating that is a real radio group.
Select
serverA native `<select>`.
Slider
clientA slider built on `<input type="range">`.
Switch
serverAn on/off toggle.
Tag input
clientA list of tags with a text field on the end.
Textarea
serverA multi-line text input.
Overlays (9)
Accordion
clientAccordion — `Accordion`, `Accordion.Item`, `Accordion.Trigger`, `Accordion.Content`.
Drawer
clientA modal dialog attached to an edge of the viewport.
Dropdown menu
clientA button that opens a list of commands.
Modal
clientA centred modal dialog.
Popover
clientA click-triggered non-modal dialog anchored to its trigger.
Portal
clientRenders its children somewhere else in the DOM — the escape hatch every overlay needs to get out from under `overflow: hidden` and a parent's stacking context.
Tabs
clientTabs — `Tabs`, `Tabs.List`, `Tabs.Tab`, `Tabs.Panels`, `Tabs.Panel`.
Toast
serverOne notification. `ToastProvider` renders these for you, but it is exported so a static toast can be dropped into a docs page or a form's inline slot.
Tooltip
clientA description that appears on hover and on focus.
Navigation (5)
Breadcrumb
serverCompound component: `Breadcrumb`, `Breadcrumb.Item`, `Breadcrumb.Separator`.
Command palette
clientThe ⌘K palette: a search box over a flat list of commands.
Navbar
clientCompound component: `Navbar`, `Navbar.Brand`, `Navbar.Links`, `Navbar.Link`, `Navbar.Actions`, `Navbar.Toggle`.
Pagination
clientPage-by-page navigation.
Sidebar
clientCompound component: `Sidebar`, `Sidebar.Section`, `Sidebar.Item`, `Sidebar.Toggle`.
Data display (7)
Avatar
serverCompound component: `Avatar` and `Avatar.Group`.
Badge
serverA small status or category label.
Card
serverCompound component: `Card`, `Card.Header`, `Card.Body`, `Card.Footer`.
Data table
clientA table with sorting, search, pagination and row selection built in.
Stepper
clientWhere the user is in a multi-step flow.
Table
serverCompound component: `Table`, `Table.Head`, `Table.Body`, `Table.Foot`, `Table.Row`, `Table.Cell`, `Table.HeaderCell`, `Table.Caption`.
Timeline
serverCompound component: `Timeline` and `Timeline.Item`.
AI chat (5)
Chat code block
clientA fenced code block with a copy button, built on `Code`.
Chat input
clientThe composer: an auto-growing textarea, an attachment slot, and a send button.
Chat message
serverOne turn in a conversation.
Chat thread
clientCompound component: `ChatThread`, `ChatThread.Message`, `ChatThread.Empty`.
Typing indicator
serverThree animated dots meaning "a reply is coming".
Feedback (5)
Alert
serverA static, inline message. `danger` and `warning` get `role="alert"` so screen readers interrupt for them; `info` and `success` use `role="status"`, which waits for a pause instead of talking over the user.
Empty state
serverThe "nothing here yet" block: a glyph, a line explaining what is missing, and the action that fixes it.
Progress
serverA determinate or indeterminate progress bar.
Skeleton
serverA loading placeholder. Hidden from assistive tech — the live region announces state.
Spinner
serverAn indeterminate loading indicator. Inherits `currentColor`.
Sections (9)
Cta
serverThe closing ask.
Faq
serverA frequently-asked-questions list built on native `<details>`/`<summary>`.
Feature grid
serverA responsive grid of icon + title + description cells.
Footer
serverThe site footer.
Hero
serverThe top-of-page pitch. Renders from props alone; pass `children` to take the inner layout over completely.
Logo cloud
serverA row of customer or partner logos.
Pricing
serverA plan comparison table built out of `Card`s.
Stats
serverA row of headline figures.
Testimonials
serverCustomer quotes.
Media & time (6)
Animated counter
clientA number that counts up to its value the first time it is scrolled into view.
Carousel
serverA carousel built on CSS scroll-snap.
Clock
clientThe current time, ticking, via `Intl.DateTimeFormat` — no date library.
Countdown
clientA countdown to a fixed moment.
Marquee
serverAn infinite ticker: the content, then an `aria-hidden` copy of it, translated by exactly half the track so the seam is invisible.
Relative time
client"3 minutes ago", via `Intl.RelativeTimeFormat` — no date library.
Theming (2)
Theme provider
clientOwns the theme: resolves it, applies it to `<html>`, persists it, and follows the OS.
Theme toggle
clientThe theme switch every consumer asks for.