Skip to content
MiladJoodiPublic
forked from shadcn-ui/ui

About

Composable, accessible components with thoughtful defaults. Build your own component library with code you can customize, extend, and make your own.

Topics

Resources

Contributing

Security policy

Stars

170 stars

Watchers

2 watching

Forks

 
 

Latest commit

 

History

2,720 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wakatime

FarsiUI

Website · Docs · Components · Blocks · Demos

A Persian-first UI component library and design system for React + Tailwind.

Building a Persian product is more than flipping an English UI to RTL and pasting Farsi text. Numbers, dates, forms, typography, and interaction details need to be designed for Persian from the start. FarsiUI is built for that.

Components are added to your project with a CLI. You get the source, you own it, and you can change anything.

FarsiUI

Features

  • RTL-first: layout, spacing, and controls designed for right-to-left
  • Persian-ready: typography, Persian digits, and natural Farsi UI patterns
  • Jalali calendar: Shamsi date support in date components
  • +500 components: ready-to-use building blocks for product UIs
  • 6 design systems: switchable looks for docs and previews
  • Your code: no locked runtime; copy, edit, and ship
  • shadcn-compatible: same CLI / registry mental model
  • Accessible: Base UI, Radix, and React Aria patterns

Quick start

npx farsiui@latest init
npx farsiui@latest add button
import { Button } from "@/components/ui/button"

export function Example() {
  return <Button>ادامه</Button>
}

Full guide: Installation

Repository structure

This is a pnpm monorepo.

Path What it is
apps/v4 Main Next.js app: docs, component registry, blocks, demos
packages/shadcn The farsiui CLI published on npm
packages/react Shared React primitives used by the registry
packages/helpers Shared utilities
templates/ Starter templates for new apps
skills/ Agent skills for Persian / RTL workflows

Most day-to-day work happens in apps/v4.

Local development

Requirements: Node.js 20+ and pnpm

git clone https://github.com/MiladJoodi/FarsiUI.git
cd FarsiUI
pnpm install
pnpm v4:dev

Then open http://localhost:4000.

Command Description
pnpm v4:dev Start the docs site (port 4000)
pnpm v4:build Production build for the site
pnpm registry:build Rebuild installable registry output
pnpm farsiui:dev Run the CLI package in watch mode
pnpm lint Lint the monorepo

Prefer a fast local disk for apps/v4/.next. Network or slow drives make cold starts much slower.

Contributing

Bug reports, missing components, RTL issues, and PRs all help. See CONTRIBUTING.md.

If you want to contribute code:

pnpm install
pnpm v4:dev

Open a PR against main when ready.

Credits

FarsiUI follows the shadcn/ui model: copyable components, CLI install, and registry-based delivery, adapted for Persian and RTL-first products.

License

MIT

About

Composable, accessible components with thoughtful defaults. Build your own component library with code you can customize, extend, and make your own.

Topics

Resources

Contributing

Security policy

Stars

170 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages