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

    PropTypeDefaultDescription
    namestring-Groups accordions so only one of them can be open at a time.
    openbooleanfalseWhether the accordion is open.
    variant"default", "outlined", "elevated", "tonal""default"The variant to use.

    Slots

    SlotDescription
    actionsA group of actions, such as buttons.
    defaultThe collapsible content.
    markerA custom marker that replaces the native one.
    summaryThe always visible header.

    Group accordions in a <Card role="group">. Set its variant to theme the whole group.

    Anchor

    PropTypeDefaultDescription
    alignmentstring"start end"Any valid position-area value. Controls where the floating content is placed.
    idstring-The id of the floating content when trigger is "hover". Add interestfor with the same id to the trigger.
    trigger"always", "hover""always"Shows the floating content always, or on hover and focus with popover="hint".

    Slots

    SlotDescription
    anchoredThe floating content.
    defaultThe content the floating content is anchored to.

    Avatar

    PropTypeDefaultDescription
    altstring-Alternative text for the image.
    as"div", "button", "a"-The element to render. Defaults to "a" with href, otherwise "div".
    commandstring-The command to send to the commandfor target.
    commandforstring-The id of the element the command targets.
    disabledboolean-Disables the avatar when as is "button".
    hrefstring-The link to use. Renders an <a>.
    interestforstring-The id of the element to show on interest.
    isGroupbooleanfalseRenders a container that groups avatars.
    srcstring-The image source. Replaces the default slot.
    variant"squared", "rounded", "squircle"-The variant to use.

    Slots

    SlotDescription
    defaultLetters or an icon, when there's no image.

    Badge

    PropTypeDefaultDescription
    alignment"start-start", "end-start", "end-end"-Where the indicator is placed.
    color"critical", "info", "neutral", "success", "warning"-Optional colors.
    dotbooleanfalseRenders the indicator as a dot, without a label.
    invisiblebooleanfalseHides the indicator.
    labelstring, number-The indicator, inside .ui-anchor-floating.

    Slots

    SlotDescription
    defaultThe element the badge is anchored to.
    indicatorThe indicator, inside .ui-anchor-floating.

    Button

    PropTypeDefaultDescription
    as"button", "a"-The element to render. Defaults to "a" with href, otherwise "button".
    color"critical", "primary"-Optional colors.
    disabledbooleanfalseDisables the button.
    hrefstring-The link to use. Renders an <a>.
    size"x-small", "small", "large"-The size of the element.
    variant"outlined", "tonal", "filled"-The variant to use.

    Slots

    SlotDescription
    defaultThe label and an optional icon.

    Button Group

    PropTypeDefaultDescription
    color"critical", "primary"-Optional colors for the buttons.
    orientation"vertical"-The orientation of the element.
    size"small", "large"-The size of the buttons.
    variant"outlined", "tonal", "filled"-The variant of the buttons.

    Slots

    SlotDescription
    defaultThe buttons.

    Callout

    PropTypeDefaultDescription
    severity"critical", "info", "neutral", "success", "warning"-The severity. Sets the color and the default icon.
    variant"outlined", "tonal""tonal"The variant to use.

    Slots

    SlotDescription
    defaultThe content.
    iconAn optional icon. info, warning and critical have a default icon.
    titleAn optional title inside the content.

    Card

    PropTypeDefaultDescription
    actionsAlign"start", "end"-Alignment for the actions.
    variant"outlined", "elevated", "tonal", "text"-The variant to use.

    Slots

    SlotDescription
    actionsA group of actions, such as buttons.
    contentThe card content.
    defaultRaw content placed directly in the card.
    headerThe card header.

    Checkbox

    PropTypeDefaultDescription
    errorbooleanfalseShows error styles.
    hideLabelbooleanfalseVisually hides the label.
    indeterminatebooleanfalseShows a partially checked state. Sets the indeterminate property on the <input>.
    size"small", "large"-The size of the element.
    spreadbooleanfalsePushes the label and the input to opposite ends.
    stackbooleanfalseStacks the label under the input.
    v-modelboolean, (string, number)[]-The checked state, or the checked values of a group.

    Slots

    SlotDescription
    defaultThe label.
    end-textSupporting text displayed below the label.

    Attributes that aren't props, such as disabled or name, go to the <input>.

    Chip

    PropTypeDefaultDescription
    asstring"div"The element to render. Defaults to "a" with href.
    labelstring-The label.
    multilinebooleanfalseLets the label wrap to multiple lines.
    size"small"-The size of the element.
    variant"outlined", "tonal""tonal"The variant to use.

    Slots

    SlotDescription
    defaultContent placed before the label.
    endOptional content at the end, such as an icon.
    startOptional content at the start, such as an icon.

    Classic Select

    PropTypeDefaultDescription
    endTextstring-Supporting text displayed below the field.
    errorbooleanfalseShows error styles.
    idstring-The id of the <select>. Generated when omitted.
    itemsItem[][]The options, as { text, value } objects.
    labelstring-The label for the field.
    size"small"-The size of the element.
    v-modelstring, number, (string, number)[]-The selected value, or values with multiple.
    variant"outlined", "filled""outlined"The variant to use.

    Slots

    SlotDescription
    defaultExtra <option> and <optgroup> elements.

    Attributes that aren't props, such as disabled or name, go to the <select>.

    Description List

    PropTypeDefaultDescription
    borderedboolean, "dotted"falseAdds a border between the term and the description.

    Slots

    SlotDescription
    defaultThe items.

    Dialog

    PropTypeDefaultDescription
    actionsAlign"start", "end"-Alignment for the actions.
    closedby"any", "closerequest", "none"-How the dialog can be closed. "any" also closes it on a click outside.

    Slots

    SlotDescription
    actionsA group of actions, such as buttons.
    contentThe dialog content.
    defaultRaw content placed directly in the dialog.
    headerThe dialog header.

    Attributes that aren't props, such as closedby or id, go to the <dialog>.

    Divider

    PropTypeDefaultDescription
    variant"tonal", "primary", "filled"-The variant to use.

    Drawer

    PropTypeDefaultDescription
    backdrop"transparent", "blurred""blurred"The backdrop style.
    closedby"none", "any", "closerequest""any"How the drawer can be closed. "any" also closes it on a click outside.
    idstring-The id of the <dialog>. Generated when omitted.
    scrollLockbooleantrueLocks page scroll while the drawer is open.
    side"inline-start", "inline-end", "block-start", "block-end""inline-start"The side it opens from.

    Slots

    SlotDescription
    contentThe scrollable content.
    defaultRaw content placed directly in the drawer.
    footerThe footer. DrawerFooter renders it.
    headerThe header. DrawerHeader renders it with a close button.

    Attributes that aren't props go to the <dialog>.

    Drawer Header

    PropTypeDefaultDescription
    headingstring-The heading.

    Slots

    SlotDescription
    defaultContent placed between the heading and the close button.

    Field Description

    Slots

    SlotDescription
    defaultThe text.

    Field Group

    PropTypeDefaultDescription
    direction"row", "column"-The orientation of the element.
    namestring-Sets name on every input, select and textarea inside.

    Slots

    SlotDescription
    defaultThe fields, such as checkboxes, radios or switches.

    Field Legend

    PropTypeDefaultDescription
    asstring"legend"The element to render. Adds .ui-legend when not "legend".

    Slots

    SlotDescription
    defaultThe label.

    Field Set

    PropTypeDefaultDescription
    asstring"fieldset"The element to render.
    disabledbooleanfalseDisables every field inside.

    Slots

    SlotDescription
    defaultThe legend, description and fields.

    Form

    PropTypeDefaultDescription
    asstring"form"The element to render.

    Slots

    SlotDescription
    defaultThe fieldsets and fields.

    Icon Button

    PropTypeDefaultDescription
    as"button", "a"-The element to render. Defaults to "a" with href, otherwise "button".
    color"critical", "primary"-Optional colors.
    disabledbooleanfalseDisables the button.
    hrefstring-The link to use. Renders an <a>.
    size"small"-The size of the element.
    variant"outlined", "tonal", "filled"-The variant to use.

    Slots

    SlotDescription
    defaultThe icon.

    Add aria-label to give the button an accessible name.

    List

    PropTypeDefaultDescription
    borderedbooleanfalseAdds a border between list items.
    densebooleanfalsePacks the list tighter.
    gutterlessbooleanfalseRemoves the inline padding.
    variant"default", "tonal", "transparent"-The background color variant.

    Slots

    SlotDescription
    defaultThe list items.

    List Item

    PropTypeDefaultDescription
    asstring-The element to render inside the <li>, such as "a" or "button".
    borderTopbooleanfalseAdds a border above the item.
    descriptionstring-Supporting text, the second paragraph.
    forstring-The for attribute of the <label> when type is set.
    headlinestring-The headline, the first paragraph.
    hrefstring-The link to use, with as="a".
    insetbooleanfalseAligns the text with items that have start content.
    type"button", "checkbox", "radio", "switch"-Wraps the content in a <label> for a checkbox, radio or switch.

    Slots

    SlotDescription
    defaultExtra content inside .ui-text, or all the content when there's no text.
    endOptional content at the end, such as a value or an action.
    startOptional content at the start, such as an icon or avatar.
    textThe text content.

    Progress

    PropTypeDefaultDescription
    aria-busyboolean, "true", "false"-Whether the progress is busy. Passed to the <progress>.
    aria-describedbystring-The id of an element that describes the progress. Passed to the <progress>.
    aria-labelstring-The accessible label. Passed to the <progress>.
    idstring-The id of the <progress>.
    maxstring, number-The maximum value.
    valuestring, number-The current value. Omit it for an indeterminate state.
    variant"default", "tonal", "filled"-The variant to use.

    Slots

    SlotDescription
    defaultFallback content inside the <progress>.

    Attributes that aren't props also go to the <progress>.

    Radio

    PropTypeDefaultDescription
    errorbooleanfalseShows error styles.
    hideLabelbooleanfalseVisually hides the label.
    size"small", "large"-The size of the element.
    stackbooleanfalseStacks the label under the input.
    v-modelstring, number, boolean-The selected value of the group.

    Slots

    SlotDescription
    defaultThe label.
    end-textSupporting text displayed below the label.

    Attributes that aren't props, such as disabled, name or value, go to the <input>.

    Range

    PropTypeDefaultDescription
    endTextstring-Supporting text displayed below the input.
    errorbooleanfalseShows error styles.
    idstring-The id of the <input>. Generated when omitted and the value is shown.
    labelstring-The label for the range.
    liststring-The id of the <datalist>. Needed with options.
    options(string, number, { value: string, number; label?: string, undefined; })[]-Tick marks, rendered as <option> elements in a <datalist>.
    spreadbooleanfalsePushes the label and description to one side and the input to the other.
    startTextstring-Description text displayed above the input.
    v-modelnumber, string-The current value.
    valuenumber, string-The current value.
    valueSuffixstring-Shows the current value, with an optional valueSuffix.
    variant"default", "tonal", "filled"-The variant to use.

    Slots

    SlotDescription
    datalistExtra <option> elements for the <datalist>.
    defaultThe label for the range.
    end-textSupporting text displayed below the input.
    start-textDescription text displayed above the input.
    valueShows the current value, with an optional valueSuffix.

    Attributes that aren't props, such as max, min or step, go to the <input>.

    Select

    PropTypeDefaultDescription
    densebooleanfalsePacks the options tighter.
    descriptionstring-Description text displayed above the field.
    endTextstring-Supporting text displayed below the field.
    errorbooleanfalseShows error styles.
    idstring-The id of the <select>.
    itemsItem[][]The options, as { text, value } objects.
    labelstring-The label for the field.
    size"small"-The size of the element.
    spreadbooleanfalsePushes the label and description to one side and the select to the other.
    v-modelstring, number, (string, number)[]-The selected value, or values with multiple.
    variant"outlined", "filled""outlined"The variant to use.

    Slots

    SlotDescription
    defaultExtra <option> and <optgroup> elements.
    descriptionDescription text displayed above the field.
    end-textSupporting text displayed below the field.
    footerContent below the select, inside the border, with a divider.
    headerContent above the select, inside the border, with a divider.
    labelThe label for the field.
    prefixContent at the inline-start of the field, inside the border.
    suffixContent at the inline-end of the field, inside the border.

    Attributes that aren't props, such as disabled or name, go to the <select>.

    Spinner

    PropTypeDefaultDescription
    aria-busy"true", "false", boolean-Set on any element to show a spinner. CSS-only; no Astro component.
    Sizesfont-size1emSpinner size follows the element's computed font size.
    Excluded<input>, <select>, <textarea>, <html>, <progress>, elements with aria-describedby-Elements that never receive a spinner.

    Switch

    PropTypeDefaultDescription
    errorbooleanfalseShows error styles.
    hideLabelbooleanfalseVisually hides the label.
    smallbooleanfalseThe size of the element.
    spreadbooleanfalsePushes the label and the switch to opposite ends.
    stackbooleanfalseStacks the label under the switch.
    v-modelboolean, (string, number)[]-The checked state, or the checked values of a group.

    Slots

    SlotDescription
    defaultThe label.
    end-textSupporting text displayed below the label.
    icon-checkedAn optional icon in the thumb when checked.
    icon-uncheckedAn optional icon in the thumb when unchecked.

    Attributes that aren't props, such as disabled or name, go to the <input>. Without a label, set aria-label or aria-labelledby.

    Table

    PropTypeDefaultDescription
    variant"dense", "spacious"-The variant to use.

    Slots

    SlotDescription
    defaultThe table sections.

    Set column widths with TableColumnGroup and TableColumn, which takes a width.

    Tabs

    PropTypeDefaultDescription
    namestring-The name shared by the tab inputs. Generated when omitted.

    Slots

    SlotDescription
    defaultThe tab items.

    Tabs Item

    PropTypeDefaultDescription
    namestring-Overrides the name shared by the tab inputs.
    openbooleanfalseSelects the tab initially.
    panelIdstring-The id of the panel. Generated when omitted.
    tabIdstring-The id of the input. Generated when omitted.

    Slots

    SlotDescription
    defaultThe tab and the panel.

    Tabs Panel

    PropTypeDefaultDescription
    panelIdstring-The id of the panel. Set by the item.
    tabIdstring-The id of the tab input that labels it. Set by the item.

    Slots

    SlotDescription
    defaultThe panel content.

    Tabs Tab

    PropTypeDefaultDescription
    tabIdstring-The id of the input it labels. Set by the item.

    Slots

    SlotDescription
    defaultThe tab label.

    Text Field

    PropTypeDefaultDescription
    autoFitbooleanfalseChanges size depending on its content.
    descriptionstring-Description text displayed above the field.
    endTextstring-Supporting text displayed below the field.
    errorbooleanfalseShows error styles.
    filledbooleanfalseThe variant to use.
    idstring-The id of the <input>.
    labelstring-The label for the field.
    smallbooleanfalseThe size of the element.
    spreadbooleanfalsePushes the label and description to one side and the input to the other.
    startTextstring-Legacy alias of description.
    type"numeric", string"text"The input type. "numeric" renders a text input with a numeric keyboard.
    v-modelstring, number-The input value.

    Slots

    SlotDescription
    defaultExtra content inside the root, such as a <datalist>.
    descriptionDescription text displayed above the field.
    end-textSupporting text displayed below the field.
    footerContent below the input, inside the border, with a divider.
    headerContent above the input, inside the border, with a divider.
    labelThe label for the field.
    prefixContent at the inline-start of the field, inside the border.
    suffixContent at the inline-end of the field, inside the border.
    supporting-textLegacy alias of the end-text slot.

    Attributes that aren't props, such as placeholder or disabled, go to the <input>.

    Text Input

    TypeModifiersDefaultDescription
    Wrapper.ui-field-The <input> must be wrapped in a <span class="ui-field"> element. Border, background, and focus styling are inherited from .ui-field, not the input itself.
    Auto-fit.ui-auto-fit-When enabled, the element changes size depending on its content.
    Sizes.ui-small-The size of the element.
    Variantsdefault, .ui-filled-The variant to use.

    Textarea

    PropTypeDefaultDescription
    autoFitbooleanfalseChanges height depending on its content.
    descriptionstring-Description text displayed above the field.
    endTextstring-Supporting text displayed below the field.
    errorbooleanfalseShows error styles.
    filledbooleanfalseThe variant to use.
    idstring-The id of the <textarea>.
    labelstring-The label for the field.
    smallbooleanfalseThe size of the element.
    spreadbooleanfalsePushes the label and description to one side and the textarea to the other.
    v-modelstring-The textarea value.

    Slots

    SlotDescription
    defaultExtra content inside the root.
    descriptionDescription text displayed above the field.
    end-textSupporting text displayed below the field.
    footerContent below the textarea, inside the border, with a divider.
    headerContent above the textarea, inside the border, with a divider.
    labelThe label for the field.
    prefixContent at the inline-start of the field, inside the border.
    suffixContent at the inline-end of the field, inside the border.
    supporting-textLegacy alias of the end-text slot.

    Attributes that aren't props, such as placeholder or rows, go to the <textarea>.

    Toast

    TypeModifiersDefaultDescription
    Command--show-toast-Custom invoker command to trigger a toast notification.
    Messagevalue / textContent-The message to display in the toast.
    Severitydata-severityinfoModifies the toast appearance. Options: success, critical, info.
    Durationdata-duration5000msDetermines how long the toast remains visible. Supports CSS time units (ms, s).
    Container#toast-manager-The global fixed container that manages the stack of toasts.
    Component.ui-toast-Individual notification element within the container.

    Toggle Button

    PropTypeDefaultDescription
    disabledbooleanfalseDisables the button.
    idstring-The id of the <input>. Generated when omitted.
    labelstring-The input value when value is omitted.
    namestring-The name of the input. Set by the group.
    pressedbooleanfalseSelects the button.
    size"x-small", "small"-The size of the element.
    type"checkbox", "radio""checkbox"The input type. "radio" allows one selection in a group.
    valuestring-The value of the input.

    Slots

    SlotDescription
    defaultThe label and an optional icon.

    Toggle Group

    PropTypeDefaultDescription
    namestring-The name shared by the inputs. Generated when omitted.
    orientation"vertical"-The orientation of the element.
    selection"multiple", "single""multiple"Whether one or several buttons can be selected. "single" uses radio inputs.
    size"default", "x-small", "small""default"The size of the buttons.

    Slots

    SlotDescription
    defaultThe toggle buttons.

    Tooltip

    PropTypeDefaultDescription
    alignmentstring"block-start"Any valid position-area value. Controls where the tooltip is placed.
    arrowbooleanfalseAdds an arrow that points to the trigger.
    idstring-The id of the tooltip. Add interestfor with the same id to the trigger.
    labelstring-The tooltip, a popover="hint".

    Slots

    SlotDescription
    contentThe tooltip, a popover="hint".
    defaultThe trigger that shows the tooltip on hover and focus.

    Typography

    PropTypeDefaultDescription
    Classes.ui-h1–.ui-h6, .ui-p, .ui-overline, .ui-caption, .ui-hgroup, .ui-blockquote, pre.ui-code-block, inline utilities, .ui-rich-text-CSS-only typography. Apply classes on elements in templates; no Astro component.
    Sizes.ui-small, .ui-large-Size modifiers on .ui-p.