Skip to main content

Theme config

Theme mode

Color palette

Grays

Border radii/radiuses/radiopedes/you know
Border radius
Field border radius
Button border radius
All
Components
Guides
API
Recent

API

Component API

Accordion

Prop Type Default Description
Group Card[role="group"] - Optional wrapper for accordion groups. To theme the entire group, apply the variant prop to this component.
name string - The name of the accordion (used for grouping multiple accordions). Works best when wrapped in a Card with role="group".
open boolean false Accordion open state.
variant "default" | "outlined" | "elevated" | "tonal" "default" The visual variant of the accordion.

Anchor

Prop Type Default Description
alignment string "start end" Any valid position-area value. Controls where the floating content is placed.
trigger "always" | "hover" "always" When set to "hover", wraps the anchor slot in an interestfor invoker and uses popover="hint" on the floating element.

Avatar

Prop Type Default Description
as any - The element or component to render as.
href string - The link to use if the avatar is an anchor.
variant "squared" | "rounded" | "squircle" "default" The visual style of the avatar.
isGroup boolean false Renders the avatar as a group.
src string - The image source for the avatar.
alt string - The alternative text for the avatar image.

Badge

Prop Type Default Description
alignment "start-start" | "start-end" | "end-start" | "end-end" "start-end" Position of the badge relative to its container.
color "critical" | "ok" | "good" | "warning" - The color variant of the badge.
dot boolean false Renders the badge as a simple dot.
invisible boolean false Hides the badge.
label string | number - Screen reader label for the badge.

Button

Prop Type Default Description
size "small", "large" - The size of the button.
variant "outlined", "tonal", "filled" - The visual variant of the button.
color "critical", "primary" - The color of the button. Default is a neutral gray.
href string - Renders as an tag if an href is provided.
disabled boolean - Button disabled state.

Button Group

Prop Type Default Description
color "critical", "primary" - Color of every button in the group. Default is a neutral gray.
orientation "vertical" - The layout orientation of the group.
size "small" | "large" - The size of the buttons in the group.
variant "outlined" | "tonal" | "filled" - The visual style of the buttons in the group.

Callout

Prop Type Default Description
variant "tonal" | "outlined" "tonal" The visual style of the callout.
severity "ok" | "warning" | "critical" - The severity level, affecting the color and icon.

Card

Prop Type Default Description
Slots header, content, actions, default - Optional slots.
variant "text", "outlined", "tonal", "elevated" "text" The variant to use.
actions { align: "end" } - Alignment for the actions slot.

Checkbox

Prop Type Default Description
checked boolean false Input checked state.
disabled boolean - Input disabled state.
critical boolean - Input error state.
hideLabel boolean - Visually hides the label.
indeterminate boolean false Visual partial-selection state. Applied via JS at runtime; does not affect form submission.
required boolean false Input required state.
size "small" | "large" - The size of the input.
spread boolean false Spreads the label and input to opposite ends.
stack boolean false Stacks the label under the input.

Slots

Slot Description
default The label text for the component.
end-text Optional supporting text displayed after the label.

Chip

Prop Type Default Description
as "div" | "a" | "button" "div" (or "a" if href present) The underlying HTML element.
label string - The text label to display.
multiline boolean false Allows multiline text.
size "small" - The size of the chip.
variant "tonal" | "outlined" "tonal" The visual variant.

Classic Select

Prop Type Default Description
disabled boolean - Select disabled state.
critical boolean - Select error state.
items Item[] [] An array of objects with text and value properties.
label string - The label for the select.
required boolean - Select required state.
size "small" - The size of the select.
variant "outlined" | "filled" "outlined" The visual variant of the select.

Description List

Prop Type Default Description
bordered boolean | "dotted" - Adds a separator between the term and description on all items. Use "dotted" for a dotted style.
class string - Custom CSS classes.

DescriptionList.Item

Prop Type Default Description
class string - Custom CSS classes.

DescriptionList.Term

Prop Type Default Description
class string - Custom CSS classes.

DescriptionList.Description

Prop Type Default Description
class string - Custom CSS classes.

Dialog

Props

Prop Type Default Description
closedby "any" | "closerequest" | "none" - Specifies how the dialog can be closed (e.g., clicking outside).
actions.align "end" - Alignment of the actions slot.

Slots

Slot Description
header The header content, wrapped in an hgroup.
content The main content, wrapped in a div with a content class.
actions The footer actions, wrapped in a div with an actions class.
default Any content not assigned to a named slot.

Divider

Prop Type Default Description
variant "tonal" | "filled" | "primary" - The visual variant of the divider.

Drawer

Props

Prop Type Default Description
id string auto-generated Unique identifier. Defaults to a stable auto-generated id when omitted.
side "inline-start", "inline-end", "block-start", "block-end" "inline-start" The side it opens from.
backdrop "transparent", "blurred" "blurred" The backdrop style.
scrollLock boolean true Whether to lock page scroll.
class string - Optional CSS class.
closedby "any", "closerequest", "none" "any" How the drawer is closed.

Slots

Slot - - Description
heading - - The drawer title.
default - - Main content area.
actions - - Bottom action area.
actions The bottom actions area, wrapped in a div with an actions class.

Field Group

Prop Type Default Description
critical boolean false Field group error state.
legend string - The text for the legend element.
direction "row" - The orientation of the field group.

Form

Prop Type Default Description
as string "form" The HTML element to render.

FieldSet

Prop Type Default Description
as "fieldset", "div" "fieldset" The HTML element to render.
disabled boolean - Whether the field set is disabled.

FieldLegend

Prop Type Default Description
as "legend", "p", "div", "span" "legend" The HTML element to render.

FieldDescription

Prop Type Default Description
- [key: string]: any - Field description for the field set. Accepts standard HTML attributes.

FieldGroup

Prop Type Default Description
name string - Shared name for nested input components.
direction "row", "column" - The orientation of the field group.

Icon Button

Prop Type Default Description
as any "button" (or "a" if href present) The underlying HTML element.
href string - Renders as an tag if an href is provided.
size "small" - The size of the icon button.
color "critical", "primary" - The color of the icon button. Default is a neutral gray.
variant "outlined" | "tonal" | "filled" - The style of the icon button.
disabled boolean - Whether the icon button is disabled.

List

List

Prop Type Default Description
bordered boolean false Adds a border between list items.
dense boolean false Packs the list tighter.
gutterless boolean false Removes list inline padding.
variant "default" | "tonal" | "transparent" - The background color variant of the list.

List item

Prop Type Default Description
as string - Renders an inner element of the given tag (e.g. "a", "button"). All extra props are forwarded to it, so any HTML attribute is supported without enumeration.
borderTop boolean false List item top border.
headline string - The main text for the list item.
inset boolean false Aligns with items that have a start icon.
supportingText string - Extra text displayed below the headline.

Progress

Prop Type Default Description
value number | string - The current value of the progress bar.
max number | string - The maximum value of the progress bar.
aria-busy "true" | "false" | boolean - Indicates that the element or its content is being modified.
aria-label string - Accessible label for the progress bar.
variant 'filled' | 'default' | 'tonal' 'default' Adjusts the progress bar background color for better contrast on different surfaces.

Range

Prop Type Default Description
label string - The label for the range input.
startText string - Informational text between label and the range input.
endText string - Informational text below the range input.
spread boolean false Spreads the label/text and input to opposite ends.
variant 'filled' | 'default' | 'tonal' 'default' Adjusts the track color for better contrast on different surfaces.
min number | string - The minimum value.
max number | string - The maximum value.
step number | string - The step increment.
value number | string - The current value.
valueSuffix string - Renders a live <output> next to the label showing the current input value. The suffix (e.g. °, px) is appended to the value and the component keeps the readout in sync on every input event.

Slots

Slot Description
default Slot for the label element.
start-text Slot for the text between label and input.
end-text Slot for the text below the input.
value Custom content for the live value readout. When set, replaces the default rendering of the value prop inside <output>. The auto-update script still mirrors the input's value into the element's text content.

Select

Prop Type Default Description
dense boolean false Select dense state.
disabled boolean - Select disabled state.
description string - Description text displayed above the select.
endText string - Supporting text displayed below the select.
critical boolean - Select error state. Sets [data-invalid] on the root element.
items Item[] [] An array of objects with text and value properties.
label string - The label for the select.
required boolean - Select required state.
size "small" - The size of the select.
spread boolean false Spreads the label/description and select to opposite ends.
variant "outlined" | "filled" "outlined" The visual variant of the select.

Slots

Slot Description
default Alternative way to define options (using <option> elements).
label Slot for the label element.
description Slot for the description (start text) element, displayed above the field.
prefix Content placed at the inline-start of the field, inside the border.
suffix Content placed at the inline-end of the field, inside the border.
header Content placed above the select, inside the border, with a divider.
footer Content placed below the select, inside the border, with a divider.
end-text Slot for the supporting text (end text) element.

Switch

Prop Type Default Description
aria-label string - Accessible name for the switch. Use when there's no visible label (ex icon-only switches).
aria-labelledby string - ID of an external element that labels the switch.
checked boolean false Whether the switch is checked.
disabled boolean false Whether the switch is disabled.
critical boolean false Switch error state.
hideLabel boolean false Visually hides the label but keeps it accessible.
required boolean false Whether the switch is required.
small boolean false Reduces the size of the switch.
spread boolean false Spreads the label and switch to opposite ends.
stack boolean false Labels are stacked under the element.

Slots

Slot Description
default The label text for the switch.
end-text Optional supporting text displayed after the label.

Table

Prop Type Default Description
class string - Additional CSS classes to apply to the table.
variant "dense" | "spacious" - The variant to use.

Tabs

Tabs

The main container for the tab items.

Prop Type Default Description
class string - Optional class name (e.g., "underlined").
name string "tabs-XXXX" A unique name for the exclusive group. Shared with all children.

Tabs.Item

A logical grouping for a tab trigger and its content. Handles state synchronization.

Prop Type Default Description
open boolean false Whether this tab is initially active.

Tabs.Tab

The visible trigger for the tab.

Prop Type Default Description
class string - Optional class name.

Tabs.Panel

The content area for the tab.

Prop Type Default Description
class string - Optional class name.

Text Field

Prop Type Default Description
autoFit boolean false Automatically adjusts its width to content.
description string - Description text displayed above the field.
critical boolean false Field error state. Sets [data-invalid] on the root element.
label string - The label for the field.
size "small" - The size of the field.
spread boolean false Spreads the label/description and input to opposite ends.
endText string - Supporting text displayed below the field.
variant "filled" - The visual variant of the field.

Slots

Slot Description
label Slot for the label element.
description Slot for the description (start text) element, displayed above the field.
prefix Content placed at the inline-start of the field, inside the border.
suffix Content placed at the inline-end of the field, inside the border.
header Content placed above the input, inside the border, with a divider.
footer Content placed below the input, inside the border, with a divider.
end-text Slot for the supporting text (end text) element.
supporting-text Legacy slot for the supporting text element.

Text Input

Prop Type Default Description
autoFit boolean false Automatically adjusts its width to content.
size "small" - The size of the text field.
variant "filled" - The visual variant of the text field.

Textarea

Prop Type Default Description
autoFit boolean false Automatically adjusts its height to content.
description string - Description text displayed above the textarea.
endText string - Supporting text displayed below the textarea.
spread boolean false Spreads the label/description and textarea to opposite ends.
variant "filled" - The visual variant of the textarea.

Slots

Slot Description
label Slot for the label element.
description Slot for the description (start text) element, displayed above the field.
prefix Content placed at the inline-start of the field, inside the border.
suffix Content placed at the inline-end of the field, inside the border.
header Content placed above the textarea, inside the border, with a divider.
footer Content placed below the textarea, inside the border, with a divider.
end-text Slot for the supporting text (end text) element.
supporting-text Legacy slot for the supporting text element.

Toast

The Toast component does not accept any props as it is a global manager container.

Toggle

Toggle Button

Individual toggle button component.

Prop Type Default Description
disabled boolean false Whether the toggle button is disabled.
label string - The label text for the toggle button.
name string - The name of the input element. Inherited from ToggleGroup if used within one.
pressed boolean false Whether the toggle button is pressed. Maps to aria-pressed in checkbox mode and to checked on the underlying input.
size "default" | "small" | "x-small" "default" The size of the toggle button.
type "checkbox" | "radio" "checkbox" The type of input element. Inherited from ToggleGroup (driven by the selection prop) if used within one.
value string - The value attribute of the input element. Defaults to label if not provided.

Toggle Group

Container for grouping multiple toggle buttons.

Prop Type Default Description
name string - The name property for child inputs. Used for native form submission.
size "default" | "small" | "x-small" "default" The size of the toggle group.
orientation "vertical" - Changes the layout direction of the group.
selection "single" | "multiple" "multiple" The selection mode. "single" maps to radio inputs; "multiple" maps to checkbox inputs.

Tooltip

Prop Type Default Description
alignment string "block-start" Any valid position-area value. Controls where the tooltip is placed relative to the trigger.
arrow boolean false When true, renders an arrow pointing from the tooltip toward the trigger. The arrow flips automatically with the tooltip via position-try-fallbacks.
id string auto-generated Identifier used to wire interestfor on the trigger to the floating element.
label string Plain-text tooltip content. For richer markup, use the content slot instead.