Introduction
PersianLabs/ui is a copy-paste component library built RTL-first for Persian interfaces, on top of shadcn/ui and Base UI. There's no package to install and no runtime to depend on — every component is distributed as source through a shadcn registry, and lands directly in your codebase when you run the CLI.
There's no separate installation
This library is built entirely on top of shadcn/ui, so it doesn't ship its own package. For new projects, the fastest path is /create — pick your theme, radius, and Persian/English fonts visually, then scaffold the project with one command (see Installation).
$ npx persianlabsui@latest init -p <preset-code>If your project already has shadcn configured, skip straight to adding components. If it doesn't, initialize it once with the standard shadcn CLI — nothing about that step is specific to this registry.
$ npx shadcn@latest initFrom there, add any component by its registry name. The CLI fetches it from the @persianlabsui registry, copies the source straight into your project, and wires up its dependencies automatically.
$ npx shadcn@latest add @persianlabsui/tabsWhy copy-paste
Components are yours once they land — no version to chase, no black-box dependency to patch around. Every component is plain React and Tailwind, built on Base UI primitives, and ready to be read, extended, or rewritten to fit your product.