Your building blocks.
From the first button to the finishing touch. Find the right piece for your next interface.
46 components
Button
Six visual treatments, compact icon buttons, and clear loading and pressed states. Built for everyday actions and the moments that matter.
FormsCheckbox
Checkbox with label, description text, error state, and three sizes.
FormsFileUpload
Drag-and-drop file upload zone with click-to-browse fallback. Shows selected files in a removable list and validates against an optional maxSize cap.
FormsInput
Text input with label, hint text, error message, icon slots, and built-in search-icon helpers.
FormsNumberInput
Numeric input with increment and decrement buttons. Respects min/max bounds and supports label, error, and hint text.
FormsRadioGroup
Clear choices, from simple radio lists to full selectable cards with icons, descriptions, and pricing. Native keyboard and form behavior included.
FormsSelect
A custom select with native form values, keyboard navigation, and optional icons and descriptions. Give people the context to choose confidently.
FormsSlider
Range input with a custom track and thumb. Supports a label, live value readout, min/max/step configuration, and disabled state.
FormsSwitch
Toggle control rendered as a styled checkbox with role="switch". Accepts label and description text.
FormsTextarea
Multi-line text input matching the Input API — label, hint, error, resize control, and three sizes.
FormsAvatar
Distinct identities with softly colored initials, images, presence indicators, and optional rings. Compose overlapping teams with Avatar.Group and an accessible overflow count.
DisplayBadge
Compact signals for status, metadata, and membership. Six semantic colors with soft, outline, and solid treatments, icon slots, and status dots.
DisplayEmptyState
Zero-data placeholder with an icon, title, description, and optional call-to-action. Use to fill tables, lists, or panels that have no content.
DisplaySkeleton
Shimmering placeholder for loading states. Renders a single block or a stack of lines, with configurable width, height, and border radius.
DisplayTable
Sortable data table with optional striped rows and bordered cells. Column definitions support a custom cell render function.
DisplayTag
Interactive chip extending Badge with a removable close button. Use for filters, selections, and user-generated labels.
DisplayTitle
Heading component that decouples visual size from semantic level. Renders any h1–h6 with independent size scale, font weight, alignment, and color variants including a gradient.
DisplayAnimatedBackground
A composable wrapper for decorative animated layers. Handles content layering, reduced-motion friendly timing, and ambient intensity controls.
LayoutCard
Container component with compound sub-components: Card.Header, Card.Body, and Card.Footer. Supports four visual variants and an optional hover animation.
LayoutDivider
Horizontal or vertical separator line. Supports an optional centered text label.
LayoutGradientOrbs
A soft blurred ambient preset that places animated color fields around the edges of a container.
LayoutGridGlow
A structured ambient preset with a subtle grid, glow falloff, and animated beam for dashboard and technical surfaces.
LayoutAlert
Notification banner with four semantic color variants, an automatic icon, an optional title, and a dismiss button.
FeedbackProgress
Linear progress bar for values 0–100. Supports four color variants, three sizes, an optional label, and a percentage readout.
FeedbackSpinner
Animated SVG ring for loading states. Supports three sizes and color options.
FeedbackToast
Portal-based notifications rendered in the bottom-right corner. Wrap your app in ToastProvider and call useToast() to fire toasts with variants, durations, and dismiss callbacks.
FeedbackAccordion
Collapsible sections with CSS grid animation. Supports single or multiple open items, three visual variants, and controlled/uncontrolled modes.
NavigationBreadcrumb
Navigation trail showing the current page location within a hierarchy. Marks the last item with aria-current="page".
NavigationPagination
Page navigation with previous/next buttons, numbered pages, ellipsis truncation, and optional first/last shortcuts.
NavigationStepper
Multi-step progress indicator showing completed, active, and pending steps. Supports horizontal, vertical, and compact (icon-only) orientations.
NavigationTabs
Tab component with keyboard navigation (Arrow keys, Home, End), three visual variants, and controlled/uncontrolled modes.
NavigationDialog
Modal dialog with focus trapping, Escape-key close, and ARIA attributes. Supports compound sub-components Dialog.Header, Dialog.Body, and Dialog.Footer across four sizes.
OverlaysDropdown
Action menu anchored to a trigger. Items support icons, disabled states, and separators. Portal-rendered to avoid overflow clipping.
OverlaysPopover
Overlay anchored to a trigger, capable of holding any rich content. Unlike Tooltip, it persists on click. Supports four placements, portal rendering, click-outside and Escape dismissal, and controlled/uncontrolled modes.
OverlaysTooltip
Tooltip shown on hover and focus. Supports four placement directions and an optional show delay.
OverlaysChatBubble
Message bubble component with sent, received, system, and AI variants. Supports avatars, timestamps, delivery status, message grouping, and streaming cursors.
ChatChatInput
Auto-resizing message composer with send button, keyboard shortcuts, and customizable action slots for attachments and emoji pickers.
ChatChatList
Conversation sidebar listing recent chats with avatars, last message preview, timestamps, unread badges, and online indicators.
ChatChatWindow
Full chat layout container with slot-based header, scrollable message area with auto-scroll, and footer for input.
ChatChatHeader
Top bar for a chat window displaying conversation title, avatar with status indicator, subtitle, and action button slots.
ChatTypingIndicator
Animated bouncing dots indicator showing that one or more users are currently typing, with automatic text formatting.
ChatChatTimestamp
Date/time separator with horizontal divider lines, used between message groups to indicate when messages were sent.
ChatChatReaction
Emoji reaction pill with count and active state, typically displayed below chat messages for team-style reactions.
ChatChatAttachment
Preview card for file, image, video, and audio attachments within chat messages, with download and preview actions.
ChatChatStatus
Presence indicator dot with optional label, supporting online, offline, away, busy, and do-not-disturb states with pulse animation.
ChatChatThread
Thread summary with reply count, participant avatars, and expandable content area for viewing threaded replies in team chat.
Chat