Components
106 components with calm motion, ready to install with the shadcn CLI or copy by hand. Every item ships its source, its API reference and a live preview.
Actions
17Buttons
A clear, responsive action with quiet secondary states.
A compact button for frequent toolbar actions.
A primary action with a menu of nearby alternatives.
Related actions joined into one surface with hairline dividers: a hover highlight glides between segments, the pressed one answers in place, and an attached menu can close the row.
Separate soft buttons in a quiet tray, with one shared highlight that morphs from button to button as you move, and a pressed state that settles in place.
Icon buttons in a compact group: the one you point at or focus grows to reveal its label while its neighbours slide aside, and an action confirms in place.
Copy a value with immediate confirmation.
A destructive button that morphs into an inline confirmation, a spinner, and a result with undo.
Gestures
Menus
Inputs
33Text fields
A single line field with clear labels and useful states.
A multiline field for notes, descriptions, and longer text.
Capture sensitive text with a visible reveal control.
Show how strong a new password is while it is typed.
A recognizable search entry point with clear affordances.
An icon that morphs into a search field with results beneath it.
Rename in place: the text becomes a field without moving.
Special inputs
Enter a bounded number with clear increment controls.
A currency field with live grouping, stable width, rolling digits, and minor-unit output.
A phone field with a country picker, formatting as you type, and E.164 output.
Turn short text values into removable tags.
A textarea with @people and #channel mentions that act as single tokens, with suggestions at the caret.
Record key combinations into key caps, with conflict warnings, Kbd, and a searchable cheatsheet.
Selects
A compact choice field with a keyboard friendly menu.
Search and select from a list without leaving the field.
Select several values while keeping the field readable.
A select whose trigger grows into the list, with a gliding highlight and type-ahead.
Filter by a few facets with chips that morph as you pick them.
Toggles
Selectable option cards with a sliding selection ring, price and description slots, and radio keyboard behavior.
A monthly and yearly switch with a savings badge and prices that roll to the new amount.
A binary choice with a precise, legible state.
Choose one option from a visible set.
A tactile toggle for settings that take effect immediately.
Switch between a small set of related views.
Pickers
Browse dates in a clear, compact month view.
Choose a date without losing context.
A range picker that grows from its trigger into two months with presets and a stretching range highlight.
Choose a time with sensible keyboard behavior.
A swatch that grows into a picker with format morphing, eyedropper, saved swatches, and contrast readout.
Disclosure
13Navigation
Expand
A native scroll container with thin overlay scrollbars and edge fades that appear only when content overflows.
Progressively reveal supporting information in place.
Give a dense card more room when requested.
Trade space between panes by dragging the divider between them.
Overlays
A focused surface for decisions that need attention.
A temporary side surface for focused work.
A sheet that rests at a peek or full height and follows your finger.
A small anchored surface for contextual information.
Preview a person or link on hover or focus without leaving the page.
Short supporting text for unfamiliar controls.
Feedback
8Messages
Data
30Avatars
Cards
Charts
A multi-series line chart with a gliding crosshair, legend toggles, and paths that morph between ranges.
Compare one measure across days and scrub any bar for its value.
A donut whose arcs morph between datasets, with the active value rolling into the center.
Layered streams on a wiggle baseline that morph between ranges, with a layer you can isolate and read week by week.
A dense time series with an overview strip: drag a window to zoom, resize it by its handles, and read events in place.
A ten by ten unit chart where every cell is one percent, and cells fly to their new group when the data changes.
Before and after on two axes: lines draw in, rank moves sit beside each value, and switching datasets slides every line to its new slope.
Show a compact trend beside a value.
Show a value against a known range.
See a year of activity at a glance, one square per day.
Give changing totals a clear sense of movement.
Overlapping distributions, one ridge per group: hover to lift a ridge and read its quartiles, switch datasets and every curve morphs.
A squarified treemap: click to drill and the tiles grow to fill the view, with a breadcrumb back and metrics that morph every tile.
Tables
Compare structured records with sortable columns.
Navigate nested folders and structured content.
Keep collection filters close and easy to reset.
Present code with legible hierarchy and copy access.
A collapsible JSON tree with search, paging for long arrays, and copy value or path.
Activity