Components
Motion primitives with shadcn-compatible registry endpoints.
New
Select
NewComposable select primitives whose panel bouncily unfolds out of the trigger and separates, plus a Morph variant where the trigger grows into the panel via shared layout.
Checkbox
NewForm choice control with a draw-on checkmark, spring press feedback and indeterminate state support.
Radio Group
NewSingle-select choice control with a gliding layoutId indicator dot and spring press feedback.
Popover
NewGooey popover whose panel oozes out of the trigger through an SVG goo filter — a liquid neck that stretches and pinches — with crisp content fading in on top, plus a Morph variant that clip-morphs open from the trigger corner. Click or hover trigger, controlled or uncontrolled.
Range Slider
NewRange slider with tick dots and a bouncy vertical-bar thumb that glides between snapped steps; drag and keyboard control, reduced-motion safe.
Wheel Picker
NewiOS-style picker wheel: a 3D drum on native momentum scroll that snaps to the nearest notch, with wheel, drag and keyboard control. Composes side by side for date and time pickers, reduced-motion safe.
Table
NewVirtualized data table that stays smooth at 10k+ rows, with sortable headers, row selection, column resize and reorder, and a sticky header. Minimal, reduced-motion-safe motion.
Shader Background
NewCanvas shader backgrounds (mesh gradient, grain, warp, waves, voronoi, dot orbit and more) with a single typed variant prop. Reduced-motion freezes animated variants.
Cylinder Carousel
NewA carousel whose items line the inside of a cylinder, receding into the center and growing toward the edges. Drag, scroll or arrow-key to roll it, with a springy glide and snap. Reduced-motion drops the glide.
Loader
NewLoading indicator with seventeen variants: spinner, dots, bars, dot-matrix, dither, morph, comet, scramble, metaballs, newton, helix, percent, and five terminal-style ascii spinners. Scales from one size prop, uses currentColor, and reduced-motion swaps every transform for a calm opacity pulse.
All Components
Tilt Card
3D perspective tilt on hover with cursor-tracked glare.
Button
Spring-pressed Button plus StatefulButton (idle → loading → success / error) and MagneticButton.
Marquee
Infinite horizontal or vertical scroll with pause-on-hover.
Tabs
Pill, segment or underline tabs with a spring layoutId indicator.
Switch
Toggle with a spring-driven thumb and press feedback.
Input
Text input with label, left/right icons, error shake and success check draw.
Bottom Sheet
Vaul-inspired draggable bottom sheet with snap points, inertia and glass surface.
Shared Layout Background
A pill that glides between hovered items via motion's shared layout, with blur enter/exit.
Dock
macOS-style dock with grouped actions and a gliding active pill.
Tooltip
Hover or focus tooltip with blur enter/exit and spring spawn.
Morphing Modal
Family-app-style modal. A single panel that morphs its height as you navigate between inner views, with blur cross-fade on content.
Text Animation
Animated text primitives for reveal sequences, shimmer loading states and letter-cascade swaps.
Number Animation
Animated number primitives for count-up values and rolling digit tickers.
Animated Badge
Status badge with animated state icons, pulse feedback and compact size variants.
Action Swap
CTA button and slot primitives for swapping text and icons with blur motion.
Animated Toast Stack
Stacked toasts with status morphs, swipe dismissal, actions and layout-aware motion.
Theme Toggle
Theme toggle button with a full-page rectangle clip-path reveal via the View Transition API.
Bouncy Accordion
Single-open accordion with weighted spring layout, icon rows and reduced-motion-safe content reveals.
Drawer
Side panel that slides in from the left or right with a spring, backdrop blur, body scroll lock and esc-to-close.
Scroll Animation
Scroll-driven motion: a Lenis smooth-scroll provider and a reading-progress indicator that reads from it.