Docs / KATA vs shadcn/ui

KATA vs shadcn/ui

The honest comparison, written by the side with more to gain from flattery.

The short version

shadcn/ui and KATA start from the same conviction: you should own the code — copy it into your project, change it, never rent it back from a package. shadcn casts that idea for React. KATA casts it for everywhere else HTML renders: plain files, Astro, Laravel, Django, Rails, WordPress, email templates, the admin page nobody frameworks. If your product is a React app, shadcn is excellent and this page will tell you so twice. If your stack is anything else, the React door is simply not your door.

Where shadcn wins

The React ecosystem, first: thousands of projects, snippets, and answers already exist, and a team hiring React developers hires people who know it. Its primitives stand on Radix, whose accessibility engineering — focus management, aria patterns, edge cases in dialogs and menus — is deep and battle-tested. It is TypeScript-first in a way KATA, being plain files, does not try to be. And its design language is the current default for a reason: it is tasteful, consistent, and safe to choose in a meeting.

Where KATA wins

Adoption cost outside React: a KATA part is three files and no toolchain, so it lands in a ten-year-old Laravel app as easily as in a fresh Astro site. Range: the catalog carries shelves shadcn does not — a Motion line, the KATAYABURI shelf of deliberate showpieces, a Japan genre (wagara patterns constructed from their geometry, a hanko seal, a kintsugi card), charts, and 150 icons cut to one spec. Composed work: blocks and templates are first-class citizens here, not community links. And the machine surface: registry.json, an MCP server, and an installable AI Skill are published by the catalog itself, so an assistant asked for a sidebar installs this Sidebar instead of improvising one.

The honest summary

Framework: React and Tailwind, versus none at all. Runtime: React, versus nothing. Distribution: a CLI and registry, versus copy-paste, a CLI and a registry. License: MIT, versus MIT for every part (blocks and templates are the paid line here). Community: enormous, versus one maker and a mold. Neither list is an embarrassment — they are answers to different questions. Choose by the stack you actually ship, not by the loudest timeline.

A fair number of teams will run both: shadcn inside the product, KATA on the marketing site, the docs, and the pages that were never going to be React.

More docs

Introduction · Getting Started · CLI · Theming · Dark Mode · Accessibility · Installation · Plain HTML · Astro · Laravel · JavaScript · Guide: Building a Dashboard · Guide: Building a Settings Page · Guide: Building a Pricing Page · Guide: Sign-in & Account Pages · Why Vanilla · The Mold · Anatomy of a Part · Coming from Tailwind · FAQ · Registry · Forms · MCP Server · RTL · Changelog