Built on Base UI · Tailwind CSS 4 · 60+ components

Styled primitives.
Your code.

A library of accessible React components built on Base UI and Tailwind CSS. Install the source into your repo and customize it.

Try any control.

Every field below is a live Cubby UI component.

New project

Project details and scheduling.

Team & settings
Send a Slack message on create.
Track toward the retainer.
Restart the cycle every Monday.
  • Accordion
  • Autocomplete
  • Alert dialog
  • Badge
  • Button
  • Button group
  • Card
  • Checkbox
  • Checkbox group
  • Circular slider
  • Code block
  • Combobox
  • Command
  • Copy button
  • Data table
  • Dialog
  • Drawer
  • Dropdown menu
  • Fancy button
  • Field
  • Fieldset
  • Form
  • Input
  • Input group
  • Label
  • Number field
  • Navigation menu
  • Popover
  • Radio group
  • Scroll area
  • Select
  • Sheet
  • Skeleton
  • Switch
  • Table
  • Tabs
  • Toast
  • Toolbar
  • Tooltip
  • Tree

Common patterns built with the library.

CommandSearchable command menu with keyboard shortcuts.
TableSemantic table with styled headers, rows, and cells.
Form controlsSwitch, NumberField, and Badge.
Sync with your system.
TypeScriptBase UITailwind 4Accessible
SearchInput paired with a keyboard shortcut hint.
Search docs…
K
Pairs with Command, Dialog, or Popover.
Toast·Notifications, stacked.
Project publishedDeployed to production in 12.4s.
Invite sent to BennettThey'll get an email.
Alma joined the projectAssigned the lead role.
~/my-app $ tree components
button.tsx
input.tsx
select.tsx
tabs.tsx
tailwind.config.ts
package.json
AccordionCollapsible sections with smooth height transitions.

Yes. Every component lands in your project on install. Fork it, rename it, change its API. There's no package to update.

Install

Add any component with the shadcn CLI. The source lands in your project — no runtime, no lock-in.