Docs / Contributing
Add a part without breaking the mold.
A contribution to KATA is a part cast from the same mold as every other part. There is no separate review aesthetic: if the part passes the checker and follows the written standard, it belongs. The standard is KATA.md in the repository and the checker is check.py; both are public, so a part can be finished — really finished — before a maintainer ever sees it.
Parts that fail the checker do not ship. That is not gatekeeping; it is the product.
Every part is a folder: meta.json, preview.html, the part CSS, and JS only when the part moves. Copy the template folder, name it, and build inside it:
cp -r template/ components/my-part python3 check.py
The preview is the documentation: if the preview cannot show the part honestly, the part is not ready.
Tokens only — no raw color anywhere, because a hard-coded hex is a part that will not survive a theme. Every class in the preview defined. Icons on the 24 grid, stroke 1.7, three shapes only. All states finished: hover, active, focus-visible, disabled, empty, overflow. Motion between 130 and 220ms with no bounce, and a prefers-reduced-motion answer for anything that moves. The vermillion core appears only where it already lives; a new part does not invent a new place for it.
The full standard, including the fine-detail rules, is section 0.6 of KATA.md.
Describe the job the part does and the screens it serves. The issue and pull request templates ask the mold questions up front — tokens, states, motion — so review starts from answers instead of questions. One part per pull request keeps the casting inspectable.
A part that needs a new token starts as a token proposal in an issue: tokens change the mold, not just the part.
Introduction · Getting Started · CLI · Theming · Dark Mode · Accessibility · Installation · Plain HTML · Astro · Laravel · React & Next.js · JavaScript · Guide: Building a Dashboard · Guide: Building a Settings Page · Guide: Building a Pricing Page · Guide: Sign-in & Account Pages · Guide: Forms, For Real · Guide: Data Tables That Survive Real Data · AI Prompts · Why Vanilla · The Mold · Anatomy of a Part · Coming from Tailwind · KATA vs shadcn/ui · FAQ · Registry · Forms · MCP Server · RTL · Changelog