sh4dcnv2 · atlas
← libraries

@sortui

A design system built on shadcn/ui: every component restyled on one token set, plus AI chat, diff and usage components and ready-made blocks.

76 components pro available react shadcn-cli MIT

Install this registry

shadcn (npm) npx shadcn@latest add https://sortui.dev/r/registry.json
pnpm pnpm dlx shadcn@latest add https://sortui.dev/r/registry.json
bun bunx shadcn@latest add https://sortui.dev/r/registry.json
fetch registry curl -s https://sortui.dev/r/registry.json

Components

76 total
Accordion ui

A vertically stacked set of headers that expand and collapse their panels, revealing one section of content at a time.

npx shadcn@latest add https://sortui.dev/r/accordion.json
AI Chat Composer ui

A message composer for AI chats: one row with actions around the text that opens into a column once the text wraps or attachments are added, with an expand act…

npx shadcn@latest add https://sortui.dev/r/ai-chat-composer.json
Alert ui

A callout that surfaces important contextual information — such as a status update or a failure — without interrupting the user's flow.

npx shadcn@latest add https://sortui.dev/r/alert.json
Alert Dialog ui

A modal confirmation dialog that interrupts the user before a destructive or irreversible action is carried out.

npx shadcn@latest add https://sortui.dev/r/alert-dialog.json
Aspect Ratio ui

Constrains its content to a fixed width-to-height ratio so media, embeds, and placeholders keep their shape at any container size.

npx shadcn@latest add https://sortui.dev/r/aspect-ratio.json
Attachment ui

An uploaded or in-flight file as a picture, a card that names its type or a row (full or compact) with its icon, name and metadata, with its upload state and a…

npx shadcn@latest add https://sortui.dev/r/attachment.json
Avatar ui

Displays a user's image with an automatic initials fallback, plus optional status badge and stacked group with overflow count.

npx shadcn@latest add https://sortui.dev/r/avatar.json
Badge ui

A small inline label for surfacing statuses, categories, and metadata next to other content.

npx shadcn@latest add https://sortui.dev/r/badge.json
Breadcrumb ui

Displays the path to the current page as a hierarchy of links so users can see where they are and jump back to any parent level.

npx shadcn@latest add https://sortui.dev/r/breadcrumb.json
Bubble ui

A chat message bubble for conversation UIs, with sender alignment, tonal variants, grouped messages, and emoji reactions.

npx shadcn@latest add https://sortui.dev/r/bubble.json
Button ui

Triggers an action. Six emphasis levels, five sizes with icon-only counterparts and an optional count chip.

npx shadcn@latest add https://sortui.dev/r/button.json
Button Group ui

Groups related buttons and controls into a single connected segment with shared borders and rounded outer corners.

npx shadcn@latest add https://sortui.dev/r/button-group.json
Calendar ui

A month grid for picking a single date, multiple dates, or a date range, built on react-day-picker.

npx shadcn@latest add https://sortui.dev/r/calendar.json
Card ui

An opaque surface that groups related content, with slots for a header, title, description, action, content, and footer.

npx shadcn@latest add https://sortui.dev/r/card.json
Carousel ui

A slide container for cycling through related content, built on Embla with previous/next buttons and arrow-key navigation.

npx shadcn@latest add https://sortui.dev/r/carousel.json
Chart ui

Recharts-based building blocks — a themed container, tooltip, and legend that pull series labels and colors from a single chart config.

npx shadcn@latest add https://sortui.dev/r/chart.json
Chat Sidebar block

Chat history in a sidebar: new chat with its shortcut, search, conversations grouped by date with pinning, per-chat actions on hover and the account menu.

npx shadcn@latest add https://sortui.dev/r/chat-sidebar-01.json
Chat Thread block

A conversation with an assistant: your messages and attachments on the right, answers across the full width with folded reasoning, lists and bold text, copy / …

npx shadcn@latest add https://sortui.dev/r/chat-thread-01.json
Chat Welcome block

The empty state of a new chat: a greeting, the prompt input and suggestion buttons that start a conversation in one click.

npx shadcn@latest add https://sortui.dev/r/chat-welcome-01.json
Checkbox ui

A control that lets the user toggle a single option between checked and unchecked states.

npx shadcn@latest add https://sortui.dev/r/checkbox.json
Collapsible ui

A panel that expands and collapses to reveal or hide secondary content behind a trigger.

npx shadcn@latest add https://sortui.dev/r/collapsible.json
Combobox ui

An input that filters a list of options as the user types and lets them pick a value from a popup.

npx shadcn@latest add https://sortui.dev/r/combobox.json
Command ui

A searchable command menu for finding and running actions, with grouped, keyboard-navigable results and built-in filtering.

npx shadcn@latest add https://sortui.dev/r/command.json
Context Menu ui

A menu of contextual actions that opens at the pointer position when the user right-clicks (or long-presses) a target element.

npx shadcn@latest add https://sortui.dev/r/context-menu.json
Dialog ui

A modal window over the page content. Composed from focused subcomponents.

npx shadcn@latest add https://sortui.dev/r/dialog.json
Diff ui

Shows the changes to a file as a unified or split diff — line numbers, added and removed lines, +/- counts in the header and syntax highlighting — from a patch…

npx shadcn@latest add https://sortui.dev/r/diff.json
Direction ui

A context provider that switches Base UI components between left-to-right and right-to-left reading directions.

npx shadcn@latest add https://sortui.dev/r/direction.json
Drawer ui

A panel that slides in from an edge of the screen and can be swiped away, for supplementary content and quick actions.

npx shadcn@latest add https://sortui.dev/r/drawer.json
Dropdown Menu ui

A menu of actions or options that opens from a trigger element, with support for groups, submenus, checkbox and radio items.

npx shadcn@latest add https://sortui.dev/r/dropdown-menu.json
Effort Slider block

A model-effort picker: a stepped slider whose thumb is pulled toward the nearest level and springs onto it, with a cross-fading level name, a recommended mark …

npx shadcn@latest add https://sortui.dev/r/effort-slider-01.json
Empty ui

A placeholder state for screens with no data yet, combining an icon, a title, a description, and follow-up actions.

npx shadcn@latest add https://sortui.dev/r/empty.json
Field ui

Composable building blocks for form fields — label, description, error, and layout primitives that wrap any control.

npx shadcn@latest add https://sortui.dev/r/field.json
File Icon ui

A coloured icon for each kind of file — document, spreadsheet, presentation, PDF, image, video, music, archive or a plain file — sized like a Lucide icon in at…

npx shadcn@latest add https://sortui.dev/r/file-icon.json
Hover Card ui

A card that previews linked content, such as a user or project, when the pointer rests on its trigger.

npx shadcn@latest add https://sortui.dev/r/hover-card.json
Input ui

A single-line text field. Three heights that line up with Button.

npx shadcn@latest add https://sortui.dev/r/input.json
Input Group ui

Groups an input or textarea with icons, text, buttons, and keyboard hints inside a single field container.

npx shadcn@latest add https://sortui.dev/r/input-group.json
Input OTP ui

A one-time password input with individual character slots, caret animation, and paste support for verification codes.

npx shadcn@latest add https://sortui.dev/r/input-otp.json
Item ui

A composable list row that arranges media, text content, and actions into a single flexible container.

npx shadcn@latest add https://sortui.dev/r/item.json
Kbd ui

Displays a keyboard key or key combination, used for surfacing shortcut hints in menus, tooltips, and documentation.

npx shadcn@latest add https://sortui.dev/r/kbd.json
Label ui

An accessible caption for a form control, associated via htmlFor and styled to dim automatically when its control is disabled.

npx shadcn@latest add https://sortui.dev/r/label.json
Marker ui

A muted inline label row with an optional icon for annotating lists, feeds, and timelines — usable as a plain note, a centered separator, or a bordered section…

npx shadcn@latest add https://sortui.dev/r/marker.json
Menubar ui

A horizontal bar of persistent dropdown menus, like the command menus along the top of a desktop application.

npx shadcn@latest add https://sortui.dev/r/menubar.json
Message ui

A layout wrapper for chat threads that positions an avatar, message bubbles, a sender header, and a timestamp footer, with start or end alignment per message.

npx shadcn@latest add https://sortui.dev/r/message.json
Message Scroller ui

A scroll container for chat and feed interfaces that starts at the latest message, keeps its position while history changes, and shows a button to jump back to…

npx shadcn@latest add https://sortui.dev/r/message-scroller.json
Model Picker block

A header menu for choosing the model a chat runs on — each option with a one-line description and a Pro badge — plus an upgrade entry.

npx shadcn@latest add https://sortui.dev/r/model-picker-01.json
Native Select ui

A styled wrapper around the browser's built-in select element for compact, dependency-free option pickers that use the platform's native dropdown UI.

npx shadcn@latest add https://sortui.dev/r/native-select.json
Navigation Menu ui

A horizontal menu of links and animated dropdown panels for top-level site or product navigation.

npx shadcn@latest add https://sortui.dev/r/navigation-menu.json
Pagination ui

Navigation between pages of a long list, with previous/next controls, numbered page links, and an ellipsis for collapsed ranges.

npx shadcn@latest add https://sortui.dev/r/pagination.json
Popover ui

A floating panel anchored to a trigger element, for lightweight details and actions that don't need a full dialog.

npx shadcn@latest add https://sortui.dev/r/popover.json
Progress ui

Displays a bar or circular ring that shows how far a task or quota has progressed toward completion, with optional label and value text.

npx shadcn@latest add https://sortui.dev/r/progress.json
Prompt Input block

A chat composer: a growing message field, file attachments with previews, a tools menu (web search, deep research, image), and a send button that turns into st…

npx shadcn@latest add https://sortui.dev/r/prompt-input-01.json
Radio Group ui

A set of mutually exclusive options where selecting one choice deselects the others.

npx shadcn@latest add https://sortui.dev/r/radio-group.json
Resizable ui

Resizable panel groups with draggable, keyboard-accessible handles for building split views and adjustable layouts.

npx shadcn@latest add https://sortui.dev/r/resizable.json
Scroll Area ui

A scrollable region with a custom, consistently styled scrollbar that replaces the native one across browsers and platforms.

npx shadcn@latest add https://sortui.dev/r/scroll-area.json
Select ui

A dropdown control for picking one option from a list, opened from a trigger button and submitted like a native form field.

npx shadcn@latest add https://sortui.dev/r/select.json
Separator ui

A thin rule that visually and semantically divides content, either horizontally between sections or vertically between inline items.

npx shadcn@latest add https://sortui.dev/r/separator.json
Sheet ui

A panel that slides in from an edge of the screen to show supplementary content or actions without leaving the current page.

npx shadcn@latest add https://sortui.dev/r/sheet.json
Sidebar ui

A composable side navigation panel with collapsible, floating, and inset modes for building application layouts.

npx shadcn@latest add https://sortui.dev/r/sidebar.json
Simple Icon ui

Renders a brand icon from Simple Icons — GitHub, Apple, Google, Figma — as a currentColor svg that sizes like a Lucide icon inside buttons and text.

npx shadcn@latest add https://sortui.dev/r/simple-icon.json
Skeleton ui

A pulsing placeholder that reserves the shape of content while it loads.

npx shadcn@latest add https://sortui.dev/r/skeleton.json
Sleep Widget block

Last night's sleep: the stages along a usage bar with a time axis, the totals per stage, a smart alarm switch and a wake-window slider.

npx shadcn@latest add https://sortui.dev/r/sleep-widget-01.json
Slider ui

A draggable control for selecting a numeric value or range within fixed bounds.

npx shadcn@latest add https://sortui.dev/r/slider.json
Sonner ui

An opinionated toast component for showing brief, stackable notifications — successes, errors, and undoable actions — from anywhere in your app.

npx shadcn@latest add https://sortui.dev/r/sonner.json
Spinner ui

An animated loading indicator for pending actions and in-flight state.

npx shadcn@latest add https://sortui.dev/r/spinner.json
Switch ui

A toggle control for switching a single setting on or off instantly.

npx shadcn@latest add https://sortui.dev/r/switch.json
Table ui

A styled HTML table for presenting structured data in rows and columns, with header, body, footer, and caption parts and a built-in horizontal-scroll container.

npx shadcn@latest add https://sortui.dev/r/table.json
Tabs ui

A set of layered panels where selecting a tab in the list shows its panel and hides the others.

npx shadcn@latest add https://sortui.dev/r/tabs.json
Textarea ui

A multi-line text field for longer free-form input such as notes, descriptions, and messages, with content-based auto-sizing.

npx shadcn@latest add https://sortui.dev/r/textarea.json
SortUI theme theme

The SortUI tokens v2 as one theme: opaque surfaces with a dark ladder (card 900, popover 800), the translucent fill ladder fill-1…4, the roles field / raised /…

npx shadcn@latest add https://sortui.dev/r/theme.json
Toggle ui

A two-state button for switching an option on or off, such as view or formatting settings in a toolbar.

npx shadcn@latest add https://sortui.dev/r/toggle.json
Toggle Group ui

A set of two-state buttons that share one selection state, allowing either a single pressed item or several at once.

npx shadcn@latest add https://sortui.dev/r/toggle-group.json
Tooltip ui

A small floating label that reveals extra context for a control when it is hovered or focused.

npx shadcn@latest add https://sortui.dev/r/tooltip.json
AI Trace ui

Lines of agent activity — reasoning, tool calls, searches, sources, plans and subagent runs — each with an icon, a title and an optional description and status…

npx shadcn@latest add https://sortui.dev/r/trace.json
Usage Bar ui

Shows how a whole is shared out — storage, a data plan, a quota — as one row of segments sized by their value, with a legend, an axis and a highlighted segment…

npx shadcn@latest add https://sortui.dev/r/usage-bar.json
useMobile hook

React hook that tracks whether the viewport is below the mobile breakpoint (768px).

npx shadcn@latest add https://sortui.dev/r/use-mobile.json
Utils lib

The cn() class-merge helper used by every component.

npx shadcn@latest add https://sortui.dev/r/utils.json