Components129 components available across web, iOS and Android.StableBetaExperimentalFoundationsAvatarA profile image with an automatic initials fallback.BadgeA small label for status, counts or categories.IndicatorBetaA dot or count pinned to the corner of an avatar, icon or button, such as unread messages or someone’s status.PortalBetaRenders its children above the app, out of the layout they are written in: for your own floating bars, panels and overlays.SeparatorA thin line that divides content horizontally or vertically, with an optional label.SkeletonA pulsing placeholder that previews the shape of loading content.TypographyText, Heading and Kbd components built on the type scale and semantic colors.Visually HiddenBetaText that screen readers read but the screen does not show, such as the rest of a link’s name or what a strikethrough means.Buttons & ActionsBack to TopBetaA floating button that appears once the page or a ScrollArea is scrolled down, and scrolls it back to the top.ButtonTriggers an action or event, such as submitting a form or opening a dialog.Button GroupGroups related buttons, joined into one control or spaced apart, such as a split button or a set of actions.Copy ButtonA button that copies a value, such as a command, link or key, and confirms it with a check and a "Copied" announcement.Floating Action ButtonThe primary action of a screen, such as Compose or New, floating above the content.Icon ButtonA square, icon-only button for compact toolbars and headers.Loading ButtonA button that displays a loading indicator and prevents interaction while an asynchronous action is in progress.ToggleA button that stays on or off, such as Bold in a text toolbar.Toggle GroupA set of toggle buttons: pick one, like text alignment, or turn on several, like bold and italic.FormsAutocompleteA text field with suggestions; any text is a valid value.CheckboxLets users select one or more options, or toggle a single setting before submitting.Checkbox GroupA labelled set of checkboxes that share one value, the list of checked options, with an optional Select All.Color PickerPick a color by dragging over saturation and brightness, sliding hue and opacity, typing a hex or pressing a swatch, in a field that opens a popover or inline.ComboboxA select you can type in to filter long lists of options.Date PickerA field that opens a calendar in a popover, or a bottom sheet on phones.Date Range PickerA field that opens a range calendar: pick a start, then an end.Date Time PickerBetaA date field and time selects side by side that make one Date, for meetings, deliveries and reminders.FieldA label, a control, help text and an error message, wired together for screen readers. Validation stays with your app or form library.FormLays out a form, with an optional title, description and footer, and wires up submit, loading and disabled states. Field state and validation stay with your app or form library.InputA single-line text field, with optional icons, buttons or text inside it and addons joined to it.LabelAn accessible label linked to a form control.Multi SelectPick several options from a searchable list; picks show as chips.Number InputA numeric field with − and + buttons, limits and a step.OTP InputA one-time-code field drawn as separate slots, with paste and SMS autofill.Password InputA password field with a button that shows and hides the text.Radio GroupA set of mutually exclusive options where exactly one can be selected.RatingA row of stars, or any icon, to give a score with a press or the keyboard, or to show one read-only, with half and part-filled icons.SelectChoose one option from a list — a dropdown on desktop, a bottom sheet on touch devices.SliderPick a number, or a range, by dragging a thumb along a track.SwitchAn on/off toggle for settings that take effect immediately.Tags InputA text field that turns typed or pasted text into removable tags, for free-form values such as topics or email addresses.TextareaA multi-line text field for longer input.Time PickerHour, minute and optional AM/PM selects that produce an "HH:mm" time.LayoutApp ShellThe frame of an app screen: header, sidebar, main content and footer. It fills the screen, Main scrolls between the bars, and the sidebar becomes a drawer on phones.Aspect RatioKeeps content at a fixed width-to-height ratio as the width changes, for images, video and maps.Auto GridEqual-width cells that pick their column count from the available width: as many as fit at a minimum width, with no breakpoints.ContainerCenters page content with a max width and responsive side padding.GridResponsive columns with spans and offsets, such as 12-column 8 / 4 layouts, identical on web and native.Scroll AreaA box that scrolls its content within a set height or width. On web its scrollbars are thin and in the theme colors.SectionA band of a page: a `<section>` with vertical spacing, a surface and a Container, for heroes, feature lists and calls to action.Show / HideShow or hide content by screen width, with CSS on web (no flash during SSR), plus useBreakpoint and useBreakpointValue.StackFlexbox primitives: Box, Stack, HStack, VStack, Center and Spacer, with responsive direction and alignment.StickyKeeps a header or a list heading in view while its container scrolls: CSS sticky on web, a pinned ScrollArea header on iOS and Android.ToolbarA row or column of related controls, such as actions, filters or formatting, with optional leading, center and trailing regions.WrapA row that wraps onto new lines, for chips, tags and badges.NavigationBreadcrumbShows where the current page sits in the hierarchy, with links back up to each level.Dropdown MenuA list of actions or options that opens from a button.LinkA text link to another page, a section or an outside site, inside a sentence or on its own.MenuAn always-visible list of actions or destinations, with icons, groups and a selected item.MenubarA bar of menus that stays on screen, as at the top of a desktop app: File, Edit, View.Navigation BarSwitches between three to five top-level destinations of an app, at the bottom of the screen on phones.Navigation MenuSite navigation with links and buttons that open panels of more links.PaginationPrevious and next buttons around the page numbers of a long list or table.SidebarApp navigation down the side of the screen, collapsible to an icon rail.StepperProgress through a multi-step flow, such as a form wizard or checkout.Table of ContentsBetaThe sections of a page as links, with the current one marked. On web it follows the scroll by itself.TabsSwitch between related panels of content within the same view.FeedbackAlertAn inline message that draws attention without interrupting the task, with optional actions and a dismiss button.Alert DialogInterrupts the user to confirm an important or destructive action before it happens.Circular ProgressA ring that fills as a task completes, for tight spaces and dashboards. Without a value it spins.Confirm DialogAsks the user to confirm one action, in one element. An async action keeps it open and busy until it finishes.Empty StateA placeholder for an empty list, search or page, with the action that fills it.Error StateShown in place of content that failed to load, with a retry button.Loading StateShown in place of content while it loads: a spinner, what is loading and a way to cancel.MeterBetaA value inside a known range, such as storage used, battery left or a score, colored by which part of the range it is in.ProgressShows how much of a task is complete.SnackbarA brief message at the bottom of the screen about something the app did, with an optional action like Undo.SpinnerAn indeterminate loading indicator.ToastBrief, non-blocking notifications triggered imperatively with `toast()`.OverlayContext MenuActions for an area, opened with a right-click on desktop and a long-press on touch screens.DialogA modal window for focused tasks that require the user’s attention.DrawerA modal panel that slides in from an edge of the screen, for navigation, filters or details.Hover CardA preview card that appears when a pointer rests on a link or keyboard focus reaches it.PopoverRich, interactive content anchored to a trigger, such as quick settings, filters or a short form.SheetA panel that slides up from the bottom of the screen for extra actions, details or a short form.TooltipA short hint shown when an element is hovered or focused.TourBetaA guided walk through a screen: each step highlights an element and shows a card beside it with Back, Next and Skip.Data DisplayAccordionVertically stacked sections that expand to reveal their content, such as FAQs or grouped settings.CalendarA month grid for picking a day or a range, with limits and disabled days.CardA surface that groups related content and actions.ChipA compact element for a filter, an entered value such as a recipient, or a suggested action.Code BlockShows code or terminal commands in a monospace block with a copy button, and optionally a title, line numbers, marked lines and syntax colors.CollapsibleShows and hides a section with one trigger, such as "Show 3 more" or "Advanced options".Data TableA table driven by data and columns, with sorting, search, row selection and pagination.Description ListBetaTerms and their details, such as the fields of an order, a profile or a file: a `dl` on web.Infinite ScrollBetaLoads more items as the end of a list comes into view, with loading, error and end states.KPI CardA card for one key figure on a dashboard, with its change and an icon.ListA vertical list of rows with a leading visual, text and trailing meta.List ItemOne row of content: a leading visual, a title and description, trailing meta and actions. Pressable, selectable or a link.SpoilerBetaShows the start of long content, such as a description or a review, with a “Show more” button for the rest. The button appears only when the content is taller than `maxHeight`.StatOne figure with its label, how it changed and a short note.TableRows and columns of data, with sortable headers, stripes and sideways scrolling.TimelineEvents in order along a vertical line, such as an activity feed or order history.Virtual ListBetaA long list that draws only the rows in view, so thousands of rows scroll smoothly.MediaAudio PlayerPlays a sound with a play button, a seek bar, skip buttons and a speed control, the same on every platform.CarouselA row of slides shown one or a few at a time, moved by swipes, previous and next buttons or dots, with optional autoplay.ImageA picture in a box of a set size or ratio, with a placeholder and a fallback.Image GalleryA grid of thumbnails that open a viewer with previous and next.VideoA video with the platform’s own controls, a fixed aspect ratio, captions on web and an error state.AdvancedCommand PaletteA searchable list of actions in a dialog, opened with ⌘K or Ctrl+K.Data GridA spreadsheet-like grid: move between cells with the arrow keys and edit values in place, with validation.Event CalendarBetaEvents on a month grid, a week or a day of hours, or an agenda list, with Today, previous and next.File DropzoneA large area to drop files on (web) or tap to pick them, with the files listed below.File UploadA button that opens the file picker, with the picked files listed below.Filter BarSearch, filter controls built from definitions, active-filter chips, and Apply and Reset, above a table, list or dashboard.KanbanExperimentalCards in columns that people move by dragging, with the keyboard, or with screen reader actions.Markdown EditorA Markdown editor with a formatting toolbar and a preview, plus Markdown Content to show what was written.Resizable PanelPanels side by side or stacked, with handles to drag, or move with the arrow keys, to resize them.Rich Text EditorExperimentalA WYSIWYG editor that shows formatting as you write and saves HTML, plus Rich Text Content to show what was written.SearchA search field with a magnifier, a clear button and a loading state.Transfer ListBetaTwo lists side by side: check items in one and move them to the other, such as the columns of a table or the members of a team.Tree ViewA hierarchy of items that open and close, such as folders or place codes.ChartsArea ChartA line chart with a light wash under each line, for totals and stacked parts over time.Bar ChartCompares values across categories as columns or bars, grouped or stacked.Composed ChartBetaBars and lines on one value axis, such as results against a target.HeatmapBetaValues across two categories as a grid of shaded cells, darker for more: by place and sector, or by day and hour.Line ChartShows change over an ordered axis, such as months, as one or more lines.Pie ChartPart-to-whole at a glance, as a donut or pie with up to six slices.Radar ChartBetaCompares a few items across several measures at once, one spoke per measure from a shared zero.Radial ChartBetaProgress toward a goal as rings: radial bars for a few items, or a gauge for one value.Scatter ChartBetaShows how two measures relate, one point per row, grouped by color or sized as bubbles.