Kibo UI
Complex composable components built for shadcn/ui.
Kibo UI is a registry of composable, accessible components designed to sit on top of shadcn/ui rather than beside it. It uses the same CSS variables, so components inherit your existing theme with no adaptation.
At a glance
| Distribution | shadcn-compatible registry, also on npm as kibo-ui |
| Base | shadcn/ui CSS variables and conventions |
| Styling | Tailwind CSS |
| Scope | components that wrap complex logic, not primitives |
| MCP server | not published |
| License | MIT |
Where it differs from shadcn/ui
shadcn/ui mostly wraps primitives: a dialog is a styled dialog. Kibo UI goes a layer up and wraps the complex logic that primitives leave to you. Kanban boards, Gantt charts, calendars, code blocks, file dropzones, comparison sliders, the components most teams either build badly or pull in three dependencies for.
The result is less boilerplate without giving up composition, because each piece is still a set of building blocks rather than a closed widget.
Two distribution paths
Unusually, it works both ways. Install through the shadcn CLI and the source lands in your project to edit, or install kibo-ui from npm and treat it as a normal dependency. Most registries force the first model. Having both means a team can own the source where it matters and stay on a package where it does not.
Choose it if
- You run shadcn/ui and keep needing the components it does not cover.
- You want a Kanban or Gantt view without adopting a whole scheduling library.
- You want the choice between owning source and tracking a package.
Look elsewhere if
- You are not on shadcn/ui. The shared CSS variables are most of the benefit.
- You want primitives. This deliberately sits above them.