Light

Component Library

57 components available. All based on shadcn/ui + Radix UI primitives unless noted as custom.

For component selection guidance, see Component Match.


Quick Reference

ComponentFileVariantsTheme-AwareCategory
Accordionaccordion.mdNoDisclosure
Alertalert.mddefault, destructiveYesFeedback
Alert Dialogalert-dialog.mdNoFeedback
Aspect Ratioaspect-ratio.mdNoLayout
Avataravatar.mdNoData Display
Badgebadge.mddefault, secondary, outline, destructive, ghost, linkYesData Display
Breadcrumbbreadcrumb.mdNoNavigation
Buttonbutton.mddefault, secondary, destructive, outline, ghost, linkYesAction
Button Groupbutton-group.mdNoAction
Calendarcalendar.mdsingle, range, multipleYesData Display
Cardcard.mddefault, smYesData Display
Carouselcarousel.mdhorizontal, verticalNoData Display
Chartchart.mdbar, area, line, pie, radar, radialNoData Display
Checkboxcheckbox.mdYesForm
Collapsiblecollapsible.mdNoDisclosure
Comboboxcombobox.mdNoForm
Commandcommand.mdNoNavigation
Context Menucontext-menu.mddefault, checkbox, radioNoNavigation
Data Tabledata-table.mdNoData Display
Date Pickerdate-picker.mdicon-left, icon-right, with-inputNoForm
Dialogdialog.mdNoOverlay
Drawerdrawer.mdNoOverlay
Dropdown Menudropdown-menu.mddefault, checkbox, radio, iconNoNavigation
Emptyempty.mdNoFeedback
Fieldfield.mdvertical, horizontal, responsiveNoForm
Formform.mdNoForm
Headerheader.mddesktop, mobileNoLayout
Hover Cardhover-card.mdNoData Display
Inputinput.mddefault, file, with-iconNoForm
Input Groupinput-group.mdNoForm
Input OTPinput-otp.mddigits-only, with-separator, simple, with-spacingNoForm
Itemitem.mddefault, outlineNoData Display
Kbdkbd.mdNoData Display
Labellabel.mdNoForm
Menubarmenubar.mddefault, checkbox, radioNoNavigation
Navigation Menunavigation-menu.mdNoNavigation
Paginationpagination.mdprevious, next, link, ellipsisYesNavigation
Popoverpopover.mdNoOverlay
Progressprogress.mdYesFeedback
Radio Groupradio-group.mddefault, boxYesForm
Resizableresizable.mdhorizontal, verticalNoLayout
Scroll Areascroll-area.mdNoLayout
Selectselect.mdNoForm
Separatorseparator.mdhorizontal, verticalNoLayout
Sheetsheet.mdtop, right, bottom, leftNoOverlay
Sidebarsidebar.mdsidebar, floating, insetYesNavigation
Skeletonskeleton.mdNoFeedback
Sliderslider.mdsingle, rangeYesForm
Sonnersonner.mddefault, success, info, warning, error, loadingYesFeedback
Spinnerspinner.mdNoFeedback
Switchswitch.mddefault, boxYesForm
Tabletable.mdNoData Display
Tabstabs.mdNoNavigation
Textareatextarea.mdNoForm
Toggletoggle.mddefault, outlineNoDisclosure
Toggle Grouptoggle-group.mddefault, outlineNoDisclosure
Tooltiptooltip.mdYesOverlay

By Category

Action

  • Button — Primary interactive element with 6 variants (default, secondary, destructive, outline, ghost, link) and 8 sizes
  • Button Group — Container for grouping related buttons with collapsed borders, split button patterns

Data Display

  • Avatar — User profile image with fallback initials, 5 sizes and 2 shapes
  • Badge — Inline status label with 6 variants (default, secondary, outline, destructive, ghost, link)
  • Calendar — Date selection grid supporting single, range, and multi-date modes
  • Card — Flexible content container with header, action, content, and footer sections; default and sm sizes
  • Carousel — Scrollable content slider powered by Embla, horizontal or vertical
  • Chart — Data visualization wrapper for Recharts with 6 chart types and themed color tokens
  • Data Table — Interactive table with sorting, filtering, selection, and pagination via TanStack Table
  • Hover Card — Rich content preview displayed on hover with configurable delay
  • Item — Flexible list item / card display with media, content, and action slots; default and outline variants
  • Kbd — Keyboard key display for shortcuts, used in tooltips, menus, and command palettes
  • Table — Static data table with header, body, footer, and caption

Feedback

  • Alert — Inline notice with icon, title, and description in default or destructive variants
  • Alert Dialog — Modal confirmation dialog that blocks interaction until resolved
  • Empty — Empty state placeholder with icon, title, description, and action slots for no-data scenarios
  • Progress — Horizontal bar showing completion percentage with animated indicator
  • Skeleton — Pulsing placeholder shapes for loading states (line, circle, square)
  • Sonner — Toast notification system with 6 types including success, error, and loading
  • Spinner — Animated loading indicator (16px), used standalone or inside buttons

Form

  • Checkbox — Binary toggle with label support, 16px square with check icon
  • Combobox — Searchable dropdown combining Command + Popover, supports multi-select
  • Date Picker — Calendar-based date input with 3 layout types (icon-left, icon-right, with-input)
  • Field — Unified form field component with label, description, error, and orientation support (vertical, horizontal, responsive)
  • Form — React Hook Form + Zod integration wrapper with validation and error handling
  • Input — Standard text input field with label, description, icon, and error states
  • Input Group — Input with inline icons, buttons, text addons, and loading states
  • Input OTP — One-time password entry with 4 layout variants for verification codes
  • Label — Form field label with semibold styling and disabled state support
  • Radio Group — Single-select option group with default and box-style variants
  • Select — Native-style dropdown for choosing from a list of options
  • Slider — Draggable range control for single or dual-thumb value selection
  • Switch — On/off toggle with track and thumb, default and box-style types
  • Textarea — Multi-line text input with resizing, character count, and error states

Layout

  • Aspect Ratio — Maintains consistent width-to-height ratio for images and media
  • Header — Custom app header with responsive desktop/mobile layouts and navigation (not a shadcn primitive)
  • Resizable — Drag-to-resize panel groups with horizontal or vertical orientation
  • Scroll Area — Custom-styled scrollbar container for overflow content
  • Separator — Visual divider line in horizontal or vertical orientation

Navigation

  • Breadcrumb — Hierarchical page trail with links, ellipsis, and dropdown support
  • Command — Searchable command palette (⌘K pattern) with grouped items and shortcuts
  • Context Menu — Right-click menu with items, checkboxes, radio groups, and submenus
  • Dropdown Menu — Click-triggered menu with items, checkboxes, radio groups, and submenus
  • Menubar — Horizontal menu bar with multiple dropdown menus (File, Edit, View pattern)
  • Navigation Menu — Top-level site navigation with dropdown content panels
  • Pagination — Page navigation controls with previous/next buttons and page numbers
  • Sidebar — Collapsible side navigation with menu items, sub-menus, and badges
  • Tabs — Tabbed content switcher with pill-style tab list and content panels

Overlay

  • Dialog — Modal window for forms or content, centered with backdrop overlay
  • Drawer — Bottom sheet overlay that slides up, swipe-to-close, mobile-friendly
  • Popover — Floating content panel anchored to a trigger element
  • Sheet — Side panel overlay from any edge (top, right, bottom, left)
  • Tooltip — Small informational popup on hover with arrow indicator

Disclosure

  • Accordion — Expandable content sections with single or multiple open items
  • Collapsible — Simple show/hide toggle for content blocks
  • Toggle — Pressable button with on/off state in default or outline variants
  • Toggle Group — Grouped toggle buttons for single or multiple selection

Last updated: February 19, 2026