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.
Navigation between pages of a long list, with previous/next controls, numbered page links, and an ellipsis for collapsed ranges.
A floating panel anchored to a trigger element, for lightweight details and actions that don't need a full dialog.
Displays a bar or circular ring that shows how far a task or quota has progressed toward completion, with optional label and value text.
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 stop while the answer streams.
A set of mutually exclusive options where selecting one choice deselects the others.
Resizable panel groups with draggable, keyboard-accessible handles for building split views and adjustable layouts.
A scrollable region with a custom, consistently styled scrollbar that replaces the native one across browsers and platforms.
A dropdown control for picking one option from a list, opened from a trigger button and submitted like a native form field.
A thin rule that visually and semantically divides content, either horizontally between sections or vertically between inline items.
A panel that slides in from an edge of the screen to show supplementary content or actions without leaving the current page.
A composable side navigation panel with collapsible, floating, and inset modes for building application layouts.
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.
A pulsing placeholder that reserves the shape of content while it loads.
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.
A draggable control for selecting a numeric value or range within fixed bounds.
An opinionated toast component for showing brief, stackable notifications — successes, errors, and undoable actions — from anywhere in your app.
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 / control, translucent lines (border, field-border, control-border), AA text colours (muted-foreground neutral-550, destructive-foreground red-700) and the fixed radius ladder. Installs over your theme variables.
An animated loading indicator for pending actions and in-flight state.
A toggle control for switching a single setting on or off instantly.
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.
A set of layered panels where selecting a tab in the list shows its panel and hides the others.
A multi-line text field for longer free-form input such as notes, descriptions, and messages, with content-based auto-sizing.
A two-state button for switching an option on or off, such as view or formatting settings in a toolbar.
A set of two-state buttons that share one selection state, allowing either a single pressed item or several at once.
A small floating label that reveals extra context for a control when it is hovered or focused.
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 that a list beside it can follow.
React hook that tracks whether the viewport is below the mobile breakpoint (768px).
The cn() class-merge helper used by every component.