shadcn/ui for React Native — copy-paste components you own, built for mobile with Expo and Uniwind.
tetra-ui.com · Documentation · Components
tetra-ui brings the shadcn/ui philosophy to React Native: beautiful defaults, open code, and a CLI that drops components straight into your app. You are not installing a black-box package — you are building a component library that is yours to shape.
npx shadcn@latest add @tetra-ui/buttonComponents are styled with Uniwind (Tailwind for React Native) and tuned for touch, accessibility, and mobile performance.
- Install Uniwind — docs.uniwind.dev
- Add utilities —
npm install class-variance-authority clsx tailwind-merge - Add a component:
npx shadcn@latest add @tetra-ui/buttonFull setup guide: tetra-ui.com/docs/installation
- React 19
- React Native New Architecture
- Uniwind
- Expo recommended
30+ components including Button, Card, Form, Select, Bottom Sheet, Menu (Expo UI), Switch, Slider, and more.
| Component | Install |
|---|---|
| Button | npx shadcn@latest add @tetra-ui/button |
| Form | npx shadcn@latest add @tetra-ui/form |
| Select | npx shadcn@latest add @tetra-ui/select |
| Bottom Sheet | npx shadcn@latest add @tetra-ui/bottom-sheet |
| Menu | npx shadcn@latest add @tetra-ui/menu |
- Copy-paste ownership — same workflow as shadcn/ui on the web
- Mobile-native — touch-first interactions, platform-aware patterns
- Expo-ready — native Menu, Switch, and Slider via
@expo/ui - Accessible — semantics and behavior built in from the start
- Customizable — edit component source directly in your repo
- Dark mode — light/dark theme tokens via CSS variables
- Agent instructions: AGENTS.md
- LLM context: tetra-ui.com/llms.txt
- Full reference: tetra-ui.com/llms-full.txt
tetra-ui/
├── apps/
│ ├── docs/ # Documentation site (tetra-ui.com)
│ └── example/ # Expo example app
├── packages/
│ └── tetra-ui/ # Component source
pnpm install
pnpm dev:docs # Documentation site
pnpm dev:example # Expo example appRebuild the component registry after editing apps/docs/registry/registry.json:
pnpm --filter docs registry:buildChoose tetra-ui when you want shadcn-style ownership on React Native with Expo and Uniwind. If you need identical components on web and native from one package, consider a universal kit like Tamagui instead.
MIT — see LICENSE