create-turbo-shadcn
v1.0.13
Published
Modern monorepo scaffolding CLI for Turborepo, shadcn/ui, and Tailwind CSS v4.
Downloads
124
Maintainers
Readme
🚀 create-turbo-shadcn
Production-ready CLI for scaffolding scalable Turborepo monorepos with shared shadcn/ui, Tailwind CSS v4, and modern workspace architecture.
Build reusable UI systems once. Share everywhere.
✨ Features
- ⚡ Turborepo monorepo setup
- 🎨 Tailwind CSS v4 preconfigured
- 🧩 Shared
shadcn/uipackage - 🔄 Shared UI architecture
- 📦 Workspace-ready setup
- 🛠 Built-in
uishortcut command - 🚀 Next.js apps included
- 🧠 Auto configuration
- 📚 Shared component exports
- 🧱 Monorepo-first structure
- 🔥 Fast scaffolding experience
- 🛠 Automatic
@/import fixing - 🔁 Retry + fallback support for shadcn registry issues
- 📦 Auto-generated barrel exports
- 🌍 Multi-package-manager support
📦 Usage
npx create-turbo-shadcn my-appOr with other package managers:
pnpm create turbo-shadcn my-app
yarn create turbo-shadcn my-app
bun create turbo-shadcn my-appOr explicitly:
create-turbo-shadcn my-app -p npm
create-turbo-shadcn my-app -p pnpm
create-turbo-shadcn my-app -p yarn
create-turbo-shadcn my-app -p bun🚀 Start Development
cd my-app
npm run dev # npm
yarn dev # yarn
pnpm dev # pnpm
bun dev # bun🧩 Add shadcn Components
npm run ui accordion # npm
yarn ui accordion # yarn
pnpm ui accordion # pnpm
bun ui accordion # bun📁 Generated Project Structure
my-app/
├── apps/
│ ├── docs/
│ │ ├── app/
│ │ └── package.json
│ │
│ └── web/
│ ├── app/
│ └── package.json
│
├── packages/
│ ├── eslint-config/
│ ├── typescript-config/
│ │
│ └── ui/
│ ├── src/
│ │ ├── components/
│ │ │ └── ui/
│ │ │
│ │ ├── lib/
│ │ │ └── utils.ts
│ │ │
│ │ ├── styles/
│ │ │ └── globals.css
│ │ │
│ │ └── index.ts
│ │
│ ├── components.json
│ ├── package.json
│ └── scripts/
│ └── shadcn-add.mjs
│
├── turbo.json
├── package.json
└── [lockfile]🧠 Shared UI Architecture
All shared components live inside:
packages/uiEvery app imports directly from shared package:
import { Button } from "@repo/ui";This enables:
- reusable design systems
- centralized UI management
- scalable monorepo workflows
- consistent component architecture
- shared design tokens
- reusable component libraries
📚 Using Components Inside Next.js Apps
Example inside:
apps/web/app/page.tsximport { Button } from "@repo/ui";
export default function Home() {
return (
<main className="flex items-center justify-center min-h-screen">
<Button>
Click Me
</Button>
</main>
);
}🎨 Add New Components
npm run ui sheet # npm
yarn ui sheet # yarn
pnpm ui sheet # pnpm
bun ui sheet # bunThen use anywhere:
import { Sheet } from "@repo/ui";⚙ CLI Options
Auto-detection
The package manager is automatically detected from the parent command:
pnpm create turbo-shadcn my-app # auto-detects pnpm
yarn create turbo-shadcn my-app # auto-detects yarn
bun create turbo-shadcn my-app # auto-detects bun
npx create-turbo-shadcn my-app # auto-detects npmHelp
npx create-turbo-shadcn --helpVersion
npx create-turbo-shadcn --versionPackage Manager (explicit)
npx create-turbo-shadcn my-app -p pnpm
npx create-turbo-shadcn my-app -p yarn
npx create-turbo-shadcn my-app -p bun
npx create-turbo-shadcn my-app -p npmSkip Install
npx create-turbo-shadcn my-app --no-install🛠 Local Development
Clone repository:
git clone https://github.com/iamsoumikhazra/create-turbo-shadcn.gitcd create-turbo-shadcnInstall dependencies:
npm installLink CLI locally:
npm link --forceTest locally:
create-turbo-shadcn test-app🧱 Tech Stack
- Turborepo
- Next.js
- shadcn/ui
- Tailwind CSS v4
- Commander.js
- Execa
- fs-extra
- Node.js
🛣 Roadmap
- [ ] Full TypeScript rewrite
- [ ] Interactive prompts
- [ ] Template system
- [ ] Web3 templates
- [ ] Prisma integration
- [ ] Drizzle integration
- [ ] Storybook support
- [ ] Docker support
- [ ] Biome support
- [ ] Remote template registry
- [ ] AI-assisted scaffolding
- [x] Bun support
- [ ] React Native templates
- [ ] Authentication templates
🤝 Contributing
PRs, issues, and feature requests welcome.
📄 License
MIT License © 2026 Soumik Hazra
