Components

The building blocks of the Shadcn UI kit.

Accordion

A vertically stacked set of interactive headings that each reveal a section of content.

Alert Dialog

A modal dialog that interrupts the user with important content and expects a response.

Alert

Displays a callout for user attention.

Aspect Ratio

Displays content within a desired ratio.

Avatar

An image element with a fallback for representing the user.

Badge

Displays a badge or a component that looks like a badge.

Breadcrumb

Displays the path to the current resource using a hierarchy of links.

Button Group

A container that groups related buttons together with consistent styling.

Button

Displays a button or a component that looks like a button.

Card

Displays a card with header, content, and footer.

Checkbox

A control that allows the user to toggle between checked and not checked.

Collapsible

An interactive component which expands/collapses a panel.

Combobox

Autocomplete input and command palette with a list of suggestions.

Dialog

A window overlaid on either the primary window or another dialog window, rendering the content underneath inert.

Empty

Use the Empty component to display an empty state.

Field

Combine labels, controls, and help text to compose accessible form fields and grouped inputs.

Hover Card

For sighted users to preview content available behind a link.

Input Group

Add addons, buttons, and helper content to inputs.

Input

A text input component for forms and user data entry with built-in styling and accessibility features.

Item

A versatile component for displaying content with media, title, description, and actions.

Kbd

Used to display textual user input from keyboard.

Label

Renders an accessible label associated with controls.

Pagination

Pagination with page navigation, next and previous links.

Progress

Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.

Radio Group

A set of checkable buttons—known as radio buttons—where no more than one of the buttons can be checked at a time.

Resizable

Accessible resizable panel groups and layouts with keyboard support.

Select

A dropdown control that allows users to choose from a list of options.

Separator

Visually or semantically separates content.

Skeleton

Use to show a placeholder while content is loading.

Sonner

A Sonner-style stacked toast notification system with auto-dismiss, swipe-to-dismiss, rich colors, and JS or server-render support.

Spinner

An indicator that can be used to show a loading state.

Switch

A control that allows the user to toggle between checked and not checked.

Table

A responsive table component.

Tabs

A set of layered sections of content—known as tab panels—that are displayed one at a time.

Textarea

Displays a form textarea or a component that looks like a textarea.

Toggle Group

A set of two-state buttons that can be toggled on or off.

Toggle

A two-state button that can be either on or off.

Tooltip

A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.

Typography

Styled HTML text elements for headings, paragraphs, quotes, lists and inline code.