Kibo UI sits in a gap most registries ignore. The animated ones ship marketing effects and the general ones ship primitives; Kibo ships the composite application pieces that are too big to be a primitive and too specific to be a landing-page block. Its index carries 41 items on a repository of around 3,900 stars.
What kind of registry it is
The tell is the size: 41 items against 247 for the largest animated registry and 1,607 for the largest general one. That is a curated set rather than a catalogue, which suits its shape - components like a kanban board, a gantt view, a code block, an image cropper, a QR code, a comparison slider - each of which is a small application rather than a styled div.
Those are exactly the components a product needs once and does not want to build: a week of work each, none of them a differentiator, all of them tedious to get right. The drag and drop guide covers what the board version of that week actually involves.
Where it fits
Second registry, on top of shadcn/ui. It has no primitives and does not try to have any, so the layered setup applies: shadcn for the base, one general registry for product surfaces, and a curated set like this one for the composites.
Against its neighbours: ReUI is the general one with two orders of magnitude more items, Origin UI extends the primitives rather than adding composites, and the animated registries are solving a different problem entirely.
What to check before taking a composite
A large component carries more of someone else's decisions than a button does, so three questions are worth asking before installing one.
What does it pull in? A gantt or a code block usually brings a real dependency, and that dependency is now yours. The item's declared dependencies are on the component page.
Does it accept your data shape, or does it define one? A board that expects its own item type means an adapter layer forever. That is fine when the shape is reasonable and expensive when it is not.
Does it own its state or accept it? A controlled component fits into your application; an uncontrolled one with internal state is a widget you talk to from outside.
None of those are objections. They are the difference between a week saved and a week deferred.
Where else to look
The honest list, because the answer is not always us:
| Source | Best for | Trade-off |
|---|---|---|
| Kibo UI | The originals with the author's documentation | A curated set, not a catalogue |
| shadcn/ui | The primitives underneath | No composites at all |
| A specialised library | One composite done to its limit, such as a real grid | A large dependency with its own API |
| 21st | Composites from across the registries, with previews | Quality varies by author, so preview before you take it |
Taking one
Every component page has a live preview and the code. Installing goes through the shadcn CLI against our registry:
That key comes from your 21st account, and installs require a membership. Set API_KEY_21ST once in your shell and the command works for anything in the catalogue.
Browse the registry directory →
Frequently asked
- What kind of registry is Kibo UI?
- A curated set of composites rather than a catalogue: 41 items covering things like a kanban board, a gantt view, a code block and an image cropper. Each is a small application rather than a styled div, and each is a component most products need once and would rather not build.
- What should you check before installing a large composite component?
- What it pulls in, since a gantt or a code block usually brings a real dependency that becomes yours. Whether it accepts your data shape or defines one, because the second means an adapter layer forever. And whether it owns its state or accepts it, which decides how well it fits your application.
- Is Kibo UI a replacement for shadcn/ui?
- No, it sits on top. It has no primitives and does not try to, so the layered setup applies: shadcn for the base, one general registry for product surfaces, and a curated set like this for the composites you do not want to write.
- How does Kibo compare to the bigger registries?
- It is two orders of magnitude smaller than the largest general registry and solves a different problem from the animated ones. Size here is a curation signal rather than a limitation, because forty-one composites is a set you can read through.



