Component Registry
Better Design ships every component as a shadcn registry item. Install with npx shadcn@latest add, land it in your components/ui/ folder, edit the source. No SDK lock-in, no runtime wrapper.
# 1. Initialize shadcn in your project (once)
npx shadcn@latest init
# 2. Add a Better Design component (any DS, any component)
npx shadcn@latest add https://better-design.com/registry/linear/button.json
npx shadcn@latest add https://better-design.com/registry/airbnb/calendar.json
npx shadcn@latest add https://better-design.com/registry/apple/sheet.jsonPattern: /registry/<design-system>/<component>.json. The CLI resolves dependencies, fetches source, writes to components/ui/.
Each design system ships ~80 components built on the same shadcn primitives: Radix UI for behavior, Tailwind v4 for styling.
.tsx files into components/ui/. Edit, fork, delete. Your choice.A JSON-based distribution format for React components. Each component is a JSON file describing its source code, dependencies, and registry dependencies. The shadcn CLI fetches the JSON, resolves deps, and writes the source into your repo at components/ui/.
Same registry format. The difference is what's inside: 73 visual design systems instead of one default theme. Pick the system whose feel matches your product.
Yes. Run npx shadcn@latest init once in your project, then npx shadcn@latest add <url> for each component.
Yes. They share the same components/ui/ folder, the same Tailwind variables, the same Radix primitives. Add Better Design components alongside your existing ones and they coexist.
More from Better Design