Components

The complete Cubix component list. Every component is accessible, themeable and shipped as source code you own - install one with npx cubix@latest add followed by its name.

70 available12 on the roadmap

Available

Button

Displays a button or a component that looks like a button, with variants, sizes and loading state.

Input

Displays a form input field or a component that looks like an input field, with invalid and disabled states.

Textarea

Displays a multiline text input field for longer form content.

Alert

Displays a callout for user attention.

Card

Displays a container with header, content, and footer.

Checkbox

A control that allows the user to toggle between checked and unchecked states.

Dialog

A modal window that overlays the page.

Direction

A provider component that sets the text direction for your application.

Select

Displays a list of options for the user to pick from, triggered by a button.

Tabs

A set of layered sections of content, known as tab panels, displayed one at a time.

Tooltip

A popup that displays information related to an element when it receives keyboard focus or hover.

Switch

A control that allows the user to toggle between checked and not checked.

Radio Group

A set of checkable buttons where only one can be checked at a time.

Accordion

A vertically stacked set of interactive headings that each reveal a section of content.

Popover

Displays rich content in a portal, triggered by a button.

Dropdown Menu

Displays a menu of actions or links to the user, triggered by a button.

Alert Dialog

A modal dialog that interrupts the user with important content and expects a response.

Aspect Ratio

Displays content within a desired ratio.

Attachment

Displays a file or image attachment with media, metadata, upload state, and actions.

Avatar

An image element with a fallback for representing the user.

Badge

Displays a badge or a component that looks like a badge.

Breadcrumb

Displays the path to the current resource using a hierarchy of links.

Button Group

A container that groups related buttons together with consistent styling.

Calendar

A calendar component that allows users to select a date or a range of dates.

Carousel

A carousel with motion and swipe built using Embla.

Chart

Beautiful charts built using Recharts.

Collapsible

An interactive component which expands and collapses a panel.

Combobox

Autocomplete input and command palette with a list of suggestions.

Command

Command menu for search and quick actions.

Context Menu

Displays a menu of actions triggered by a right click.

Data Table

Powerful table and datagrids built using TanStack Table.

Date Picker

A date picker component with range and presets.

Drawer

A drawer component for React.

Empty

Use the Empty component to display an empty state.

Field

Combine labels, controls, and help text to compose accessible form fields and grouped inputs.

Hover Card

For sighted users to preview content available behind a link.

Input Group

Display additional information or actions inside an input.

Input OTP

Accessible one-time password component with copy-paste functionality.

Kbd

A component to display keyboard shortcuts.

Label

Renders an accessible label associated with controls.

Menubar

A visually persistent menu common in desktop applications.

Message

Displays a message in a conversation, with optional avatar, header, footer, and alignment.

Navigation Menu

A collection of links for navigating websites.

Pagination

Pagination with page navigation, next and previous links.

Progress

Displays an indicator showing the completion progress of a task.

Resizable

Accessible resizable panel groups and layouts.

Scroll Area

Augments native scroll functionality for custom, cross-browser styling.

Separator

Visually or semantically separates content.

Sheet

Extends the Dialog to display content that complements the main content of the screen.

Sidebar

A composable, themeable and customizable sidebar component.

Skeleton

Use to show a placeholder while content is loading.

Slider

An input where the user selects a value from within a given range.

Sonner

An opinionated toast component.

Spinner

An indicator that can be used to show a loading state.

Table

A responsive table component.

Toast

A succinct message that appears temporarily to provide feedback.

Toggle

A two-state button that can be either on or off.

Toggle Group

A set of two-state buttons that can be toggled on or off.

Conversation

Top-level chat shell that sticks to the latest turn, with empty, scroll, streaming, and download controls.

Message Scroller

Chat transcript scroller for turn anchoring, streaming follow, history restore, and jump controls.

Thinking

Collapsible block for model reasoning and chain-of-thought while a reply is prepared.

Streaming Text

Progressive text surface for token-by-token model output during a stream.

Prompt Input

AI prompt composer with actions, file attachments, and submit controls.

Prompt Suggestion

One-tap suggestion chips that seed the prompt composer with starter prompts.

Model Selector

Select models and providers from the chat header or composer toolbar.

Tool Call

Visualize tool and function invocations with status, args, and results.

Sources

Citation list for retrieved documents and grounded answer references.

Code Block

Syntax-highlighted code surface for assistant replies with copy actions.

Branch

Navigate alternate reply branches when regenerating or editing a turn.

Queue

Queue and manage pending prompts while the model is still responding.

On the roadmap

Next up: mobile primitives for touch-first apps - navigation bars, sheets, gestures, and safe-area layout - following the same Cubix patterns as Drawer and Sheet. They land registry-first so you can adopt them one by one:

Bottom Navigation

Soon

A persistent tab bar for primary mobile destinations with icons, labels, badges, and safe-area support.

App Bar

Soon

Compact top bar for mobile screens with title, navigation, and action slots.

Action Sheet

Soon

Mobile action menu that slides up with destructive and cancel options.

Bottom Sheet

Soon

Draggable sheet anchored to the bottom of the viewport for filters, details, and pickers.

FAB

Soon

Floating action button for the primary mobile action, with optional speed-dial expands.

Swipe Actions

Soon

Swipeable list rows that reveal contextual actions on touch gestures.

Pull to Refresh

Soon

Pull-down refresh control for mobile lists and feeds with loading feedback.

Safe Area

Soon

Layout helpers that respect notch, home indicator, and device safe insets.

Segmented Control

Soon

Compact iOS-style control for switching between a small set of views.

Stepper

Soon

Numeric stepper with increment and decrement controls sized for touch.

Snackbar

Soon

Transient bottom feedback for mobile actions, with optional undo.

Dock

Soon

Floating mobile dock for quick actions that sit above the home indicator.