Atoms

The smallest functional units of the design system. These primitives are the foundation for all molecules and blocks.

54 components

Based on shadcn/ui · Radix UI

How To Use This Page

Atoms are grouped by the kind of interaction they support so teams can find the right primitive before building a larger pattern.

Start in atoms when you need the smallest reusable control and want to stay close to the source component API.

How The Content Is Grouped

  • The top-level Atoms page groups the catalog by subcategory, making it easier to choose a family of patterns before drilling into an implementation.
  • Use the highlighted links below to start with the highest-signal areas of the section.

Primitives

Primitive

Button

Triggers actions. Supports multiple variants, sizes, and icon compositions.

Primitive

Button Group

Multiple related actions as a unified joined control.

Primitive

Badge

Compact labels for status, categories, and metadata.

Primitive

Avatar

User representations with image, fallback, and optional status indicator.

Primitive

Avatar Stack

Overlapping group of avatars with optional overflow badge.

Primitive

Input

Single-line text field for user input.

Primitive

Label

Accessible form label that associates with its control.

Primitive

Separator

Visual divider between sections, horizontal or vertical.

Primitive

Card

Contained surface for grouping related content. Supports media, stats, and article layouts.

Primitive

Skeleton

Loading placeholder that mimics content shape.

Primitive

Textarea

Multi-line text input field.

Primitive

Kbd

Keyboard shortcut display using monospaced styling.

Primitive

Steps

Multi-step progress indicator. Circles, bullets, and progress-bar variants.

Primitive

Aspect Ratio

Constrains content to a specific aspect ratio.

Form

Form

Checkbox

Binary selection control, supports indeterminate state.

Form

Radio Group

Single selection from a set of mutually exclusive options.

Form

Switch

Toggle between two states — on and off.

Form

Toggle

Two-state press button for toolbars and filter controls.

Form

Toggle Group

Set of toggles with single or multiple selection.

Form

Slider

Range input for selecting a numeric value.

Form

Select

Dropdown list for choosing a single option.

Form

Native Select

Styled native HTML select. No JavaScript overhead — uses the browser's built-in dropdown.

Form

Combobox

Searchable select field with autocomplete filtering.

Form

Command

Composable command menu with search, groups, keyboard navigation, and shortcut indicators.

Form

Calendar

Date picker calendar with single, range, and multi-select modes.

Form

Date Picker

Composable date input combining calendar with a popover trigger.

Form

Input OTP

One-time password input with individual character slots.

Overlay

Overlay

Dialog

Modal overlay for focused tasks and confirmations.

Overlay

Alert Dialog

Confirmation modal that requires explicit user action before proceeding.

Overlay

Sheet

Slide-in panel anchored to a screen edge.

Overlay

Drawer

Bottom sheet that slides up from the edge, optimised for mobile.

Overlay

Tooltip

Brief label that appears on hover to clarify an element.

Overlay

Popover

Floating panel anchored to a trigger, for richer content.

Overlay

Hover Card

Rich preview card that appears on hover over a link or element.

Overlay

Dropdown Menu

Contextual menu revealed on trigger interaction.

Overlay

Context Menu

Right-click menu with nested sub-menus and keyboard support.

Navigation

Layout

Menubar

Horizontal application menu bar with nested dropdown panels.

Layout

Navigation Menu

Accessible top-level navigation with animated dropdown panels.

Layout

Sidebar

Composable side navigation with collapsible, icon, and off-canvas modes.

Layout

Layout

Tabs

Organises content into switchable panels.

Layout

Accordion

Vertically stacked sections that expand and collapse.

Layout

Collapsible

Toggleable content region, building block for nav groups.

Layout

Scroll Area

Scrollable container with a styled custom scrollbar.

Layout

Breadcrumb

Navigation trail showing the current page location.

Layout

Pagination

Navigation control for multi-page content.

Layout

Carousel

Horizontally scrollable item sequence with previous/next controls.

Layout

Resizable

Drag-to-resize panel groups for flexible layouts.

Data

Data

Table

Structured data display with rows and columns.

Data

Data Table

Sortable, filterable table powered by TanStack Table.

Data

Chart

Recharts-based data visualisation with design-system styling.

Feedback

Feedback

Alert

Inline message communicating status or feedback.

Feedback

Progress

Visual indicator of completion or loading progress.

Feedback

Spinner

Animated loading indicator for async operations.

Feedback

Toast

Non-blocking notifications that appear briefly and dismiss automatically.