Components

Every component, organised by layer.

Foundation

Mechanism primitives the components share.

DisclosureIcon

An indicator that turns as a region opens and closes

Highlight

A highlight that slides between active items

Ripple

A ripple spreading from the point of contact

VisuallyHidden

Text visible only to screen readers

Typography

How text, code, lists and quotations are set in body content.

Blockquote

Quotes a passage from elsewhere

Code

Inline code within body text

CodeBlock

A block of code with highlighting and copying

DescriptionList

Pairs of names and values

Heading

Headings with semantics and size decoupled

Kbd

A keyboard key, for documenting shortcuts

LineClamp

Folds long content to a set number of lines, expandable when it overflows

Link

A text link that can render as a router component

List

Ordered and unordered lists

Mark

Marks text, such as search hits

NumberFormat

Formats numbers for the current language

Prose

A rich text container that styles native tags

Spoiler

Hides spoilers until revealed

Text

Body text

Time

Displays time in the current language

Layout

Containers that arrange their children — direction, spacing and alignment.

Affix

Sticky container

AspectRatio

Holds its content to a given width-to-height ratio

Center

Centres its content on both axes

Container

Holds page content to a readable width and centres it

Divider

A hairline that separates two pieces of content

Flex

A flex container with full control over its axes

Grid

A grid container with a fixed number of columns

Inline

Lays its children out in a row, wrapping when needed

Masonry

Masonry

ScrollArea

A scrolling region with overlay scrollbars

SimpleGrid

An even grid whose columns follow a minimum width

Space

An empty element that takes up room in a flex container

Splitter

Panes whose proportions are adjusted by dragging a divider

Stack

Lays its children out in a single column

Atoms

The smallest reusable units — buttons, tags and badges.

Avatar

A round portrait standing for a person or entity

Badge

Pins an unread count to the corner of its host

Button

Triggers a single action

ButtonGroup

Joins several buttons into one unit

Chip

An item that can be selected or removed

CloseButton

Dismisses dialogs, drawers and toasts

CopyButton

Writes a piece of text to the clipboard

FloatButton

A prominent action at the edge of a page or container

IconButton

An icon-only button that requires a name

Indicator

A small dot that shows a status

Skeleton

A placeholder that holds the shape of loading content

Spinner

A spinning indicator for work in progress

SplitButton

A primary action joined to a menu of alternatives

Tag

A short label for status, category or attribute

Forms

Controls for entering, choosing and submitting data.

Autocomplete

Free-text input with caret-aware suggestions

Checkbox

Ticks one option, or several out of many

CheckboxGroup

A set of checkboxes sharing one array value

Combobox

A select that filters as you type

DateField

Types a date or time segment by segment

DatePicker

Types a date or picks it from a calendar

DateRangeField

Types a start and an end date segment by segment

DateRangePicker

Types a date range or picks it from a calendar

DateTimePicker

Types a date and time or picks them from a calendar and a time field

Editable

Edit text in place with save and cancel

FileUpload

Picks files by clicking or dropping

Form

Collects field values, validates them and submits

FormField

Pairs a control with its label, description and error

FormLayout

Groups fields into a grid with a title and description

Input

A single-line text field

InputGroup

Joins addons and buttons with a field into one surface

Listbox

An always-visible list of options

MultiCombobox

Types to search and picks several items

MultiSelect

Picks several items from a list

NumberInput

A field for entering numbers

PasswordInput

A password field with a visibility toggle

PinInput

Enters a code one character per cell

RadioGroup

Picks exactly one option from a set

RangeSlider

Picks a range within bounds with two thumbs

Rating

Rates with stars or shows a score

SearchInput

A field for entering a search query

SegmentedControl

Switches among a few peer options

Select

Picks one item from a list

Slider

Picks a number within a range by dragging

Switch

Toggles between on and off

TagsInput

Enters several values as removable tags

Textarea

A multi-line text field

TimeField

Types a time segment by segment

Toggle

A two-state button that stays pressed

Tree

An expandable tree with cascading checkbox selection

TreeSelect

Picks one item from a tree

Overlays

Panels and hints that float above the page.

AlertDialog

A confirmation dialog that needs an explicit answer

CommandPalette

A keyboard-summoned search panel for picking commands and pages

ContextMenu

A menu that opens at the pointer on right-click or long press

Dialog

A modal dialog that interrupts the current task

Drawer

A modal panel that slides in from the screen edge

DropdownMenu

A set of actions revealed on click

HoverCard

A preview card that floats out while hovering a link

Lightbox

A full-screen image preview with controlled visibility and selection

LoadingOverlay

A loading indicator laid over an area, shown after a short wait

Menubar

A row of menus, like the menu bar of a desktop app

OverlayBranch

An outside layer that coexists with modal overlays

Popconfirm

A confirmation bubble that floats out next to its trigger

Popover

A small panel that floats out on click

Sheet

A panel that rises from the bottom of the screen and can be dragged shut

Toast

Short feedback that floats in after an action

Tooltip

A short note shown on hover or focus

Tour

A step-by-step guide that highlights parts of the page

Display

Panels, containers and states that carry and present content.

Accordion

A list of sections that expand and collapse in turn

Alert

A message bar that appears in the page after something happens

Banner

An announcement bar across the top of the page

Calendar

Shows a month and picks a date

Callout

A note written into the content

Card

Gathers a group of content onto one raised surface

Carousel

Browse content with dragging, grouping and optional rotation

Collapsible

A region a single trigger opens and closes

Empty

A placeholder for an area with nothing in it, saying why and what to do next

Image

An image that loads lazily and falls back when it fails

MeterGroup

A segmented bar showing how parts make up a whole

MonthGrid

Month display

Panel

A card with a standard title bar, with places for a title, a count and actions

Progress

A bar whose fill shows how much of a task is done

QRCode

Scannable SVG codes with image export

RangeCalendar

Shows a month and picks a date range

Result

The outcome of an operation, as success, error, warning or info

RingProgress

A ring whose arc shows how much of a task is done

Statistic

A key figure set large, with its label and change

Tabs

Several sets of content shown one at a time in the same place

Timeline

An ordered sequence of events with connected markers

Data

Components that organise and present sets of data in rows and columns.

DataList

List and grid data views with pagination and custom items

DataTable

A data table with sorting, filtering, pagination and row selection

Pagination

Selects a page within a numbered range

Table

Static data organised into rows and columns

VirtualList

A virtual list with dynamic item sizes

Shell

The outer frame that carries the interface and divides it into regions.

AppShell

The outer frame of an application, holding the sidebar, header and main area

Page

The skeleton of a page's content, with a header, body and aside

Section

A titled section of content

Sidebar

The navigation column on the left of an application, collapsible to a rail of icons