oks-ui
Docs
Components
Templates
Search…
⌘K
Browse components
All components
Actions
Button
ButtonGroup
Feedback
Alert
Toast
Loader
Modal
Navigation
Tabs
Drawer
Dropdown
SteppedForm
Nav
Breadcrumbs
Pagination
SegmentedControl
CommandPalette
Data Display
Badge
Avatar
Chip
Tooltip
Table
EmptyState
Progress
Accordion
Data Visualization
Line Chart
Area Chart
Bar Chart
Column Chart
Pie Chart
Donut Chart
Heatmap Chart
Chart States
Layout & Display
Divider
Backdrop
PageTitle
Card
Stat
Timeline
Calendar
SplitLayout
Message
Board
Skeleton
Forms
Text Field
Textarea Field
Select Field
Password Field
OTP Field
Phone Field
Range Field
File Field
Switch Field
Radio Group Field
Checkbox Group Field
Date Picker Field
Editors
TextEditor
Components
Component library
Every component exported from oks-ui, organized by category.
Actions
Button
A pressable element with variants, colors, sizes, loading state, and ripple feedback.
ButtonGroup
Merges adjacent Buttons into a single control, sharing variant/color/size defaults.
Feedback
Alert
Contextual feedback message with icon, title, description, and dismiss.
Toast
Provider-based toast notification system with a promise-aware API.
Loader
Loading spinner for indeterminate progress, with 7 built-in variants.
Modal
Dialog modal with focus trapping, keyboard dismissal, and safe stacking.
Navigation
Tabs
Tabbed content navigation with a composable, roving-tabindex API.
Drawer
Slide-in panel from any edge of the viewport, built on the same overlay stack as Modal.
Dropdown
Menu dropdown with triggers, sections, submenus, and opt-in virtualization.
SteppedForm
Multi-step form flow with progress tracking, built on FormFieldSet.
Nav
Multi-level navigation tree with collapsible groups, active-route styling, an accordion mode, and a collapsed icon rail.
Breadcrumbs
Navigation trail with a chevron separator, collapse-to-ellipsis, and router-link polymorphism.
Pagination
Windowed page-number control for a list or table footer, with a "Showing X–Y of Z" summary.
SegmentedControl
Compact inline switch between a few mutually exclusive options, with an animated selection thumb.
CommandPalette
The Cmd+K overlay: a search box over a fuzzy-filtered, grouped list of actions and destinations, with full keyboard navigation and a useCommandPalette hotkey hook.
Data Display
Badge
Notification badge with count, dot, and placement, plus a bump animation on change.
Avatar
User avatar with group support, status indicator, and image-load fallback.
Chip
Compact tag or pill element, closable and selectable.
Tooltip
Hover/focus tooltip with positioning logic and touch-aware delays.
Table
Config-driven data table with sorting, row selection, row expansion, a sticky header, and loading and empty states.
EmptyState
Centered placeholder for an empty or no-match list, with an icon, title, description, and actions.
Progress
Linear and circular progress indicators, determinate or indeterminate, with an optional value label.
Accordion
Collapsible sections with single-open or multiple modes, three visual variants, and animated open/close.
Data Visualization
Line Chart
Chart type="line" -- ChartLineOptions: curve style and stroke width.
Area Chart
Chart type="area" -- a line chart with the area under it filled automatically.
Bar Chart
Chart type="bar" -- ChartBarOptions: stacked series and corner radius.
Column Chart
Chart type="column" -- ChartColumnOptions: stacked series and corner radius.
Pie Chart
Chart type="pie" -- ChartPieStyleOptions: slice border. Single series, one value per slice.
Donut Chart
Chart type="donut" -- ChartPieStyleOptions: slice border and inner ratio.
Heatmap Chart
Chart type="heatmap" -- ChartHeatmapOptions: series as rows, categories as columns, one hue scaled by opacity across the value domain.
Chart States
isLoading/error/empty -- real, separate props that each replace the chart entirely, shared across every chart type.
Layout & Display
Divider
Horizontal or vertical rule, with an optional inline label.
Backdrop
Overlay backdrop for modals, drawers, and menus, with blur and stacking support.
PageTitle
Semantic page/section heading with an optional icon, subtitle, and tooltip.
Card
Bordered, rounded, elevated surface container, with header, body, and footer regions.
Stat
KPI block with a label, value, trend delta pill, optional icon and sparkline, plus a responsive StatGroup.
Timeline
Vertical activity feed with dot or icon markers on a connector rail.
Calendar
Standalone month-grid view with single or range selection, min/max and per-day constraints, a renderDay slot for event markers, and full grid keyboard navigation.
SplitLayout
Resizable multi-pane frame for email 3-pane, master-detail, and split editors, with keyboard-resizable dividers and collapsible panes.
Message
Chat message-thread primitives: a screen-reader-live MessageList and left/right-aligned Message bubbles with author, avatar, timestamp, delivery status, and continuation grouping.
Board
Data-driven Kanban board with dependency-free pointer, touch, and keyboard drag-and-drop, column card limits, and live-region announcements.
Skeleton
Loading placeholder, as a shaped block or a wrapper that reveals its content once loaded.
Forms
Text Field
FormFieldSet type="text" -- TextField, also covers number/url/search/color/email.
Textarea Field
FormFieldSet type="textarea" -- multi-line text with a length counter.
Select Field
FormFieldSet type="select" -- single/multi select with a custom popover or native mode.
Password Field
FormFieldSet type="password" -- reveal toggle and strong-password requirements.
OTP Field
FormFieldSet type="otp" -- segmented or single-input one-time code entry.
Phone Field
FormFieldSet type="phone" -- phone number with a country calling-code selector.
Range Field
FormFieldSet type="range" -- single or dual-thumb slider.
File Field
FormFieldSet type="file" -- inline or dropzone file upload with previews.
Switch Field
FormFieldSet type="switch" -- toggle with optional on/off state text.
Radio Group Field
FormFieldSet type="radio" -- single-select radio group.
Checkbox Group Field
FormFieldSet type="checkbox" -- multi-select checkbox group.
Date Picker Field
FormFieldSet type="datepicker" -- single date or range, with time and presets.
Editors
TextEditor
Block-based rich text editor (Notion-style) with 14 block types, slash-menu insertion, and drag-and-drop reordering.