A shadcn registry for AI and media-rich interfaces — streaming LLM chat, zoomable images, swipeable card decks, interactive maps, plus dashboard and landing-page blocks.
Inline callout carried by a pastel fill alone, no border or icon, that turns into pastel ink on a faint wash in dark mode.
Fixed bottom tab bar for phones: icon and label per item, a gradient that fades the page into the background behind it, and an active item you hand it from your router, so it works under Next, Remix or a plain anchor.
Versatile button with variants, sizes, loading state, and icon support.
Copy text to the clipboard, falling back to a selection and execCommand where the async Clipboard API is unavailable — which includes any page served over plain HTTP, such as opening a dev server from a phone on the LAN. Returns whether the copy landed.
Syntax-highlighted code with a copy button, a filename bar, and a package-manager tab strip.
Always-on live-preview markdown editor: one surface that is both the rendered document and the text you type into, with debounced autosave and a per-construct typography map.
Turns a URL into what it points to: a YouTube facade, a lazy Spotify player, an image, a video, or a plain link card, decided from the URL alone.
Variable font weight tokens for Inter (normal, medium, semibold, bold) using font-variation-settings.
The Twitter/X-style verified checkmark, with the check cut out of the rosette as a real hole via an SVG mask so whatever sits behind it shows through.
Named icon slots with a Lucide default set; swap any icon via IconProvider.
A figure with an optional caption, a native-dialog zoom sized from the picture's own proportions, and an edge-to-edge bleed for a landscape image.
Shared interaction-state tokens: surface-relative hover/active overlays (bg-hover, bg-active), the selected fill, the destructive-light ground, the --overlay RGB triplet, the --focus-ring color, and the base-layer :focus-visible fallback ring.
Three duration tiers and one easing, as CSS custom properties: --motion-fast/moderate/slow with a matching -exit for each, and --motion-ease, the settle curve of a critically damped spring. Reduced motion zeroes every tier in one place, so no component carries its own guard.
Inline audio player with a transport, an elapsed/remaining clock, and a seek bar that renders as a line or a waveform of precomputed peaks.
Compound card for commerce rows — image well and a title/subtitle/metric footer.
Static lookup tables for bg-surface-N and shadow-surface-N utilities. Required because Tailwind v4 cannot detect template-literal class names.
React context that tracks the current substrate elevation level. Elevated components (Dropdown, Select, etc.) read it via useSurface() and render at substrate + offset, then re-provide a new substrate so further nesting elevates further.
Eight-level surface and shadow ladder for elevation. Light: two color steps then flat white, differentiated by shadow. Dark: additive white-opacity ladder with layered inset highlights and drops.
A toggle whose thumb slides with a double bounce, ported from transitions.dev: past the end, back, settle. A wide pill thumb on a 44x22 track, hover and press states, geometry as CSS variables.
Tab navigation with underline, background, and ghost variants, and an indicator that follows the shape system.
Floating tooltip with configurable placement, a follow-cursor mode, and rich content support.
Utility function for merging Tailwind CSS classes with clsx and tailwind-merge.