A modern Next.js monorepo template with shadcn/ui, Turborepo, and Biome.
- ⚡ Next.js 16 with Turbopack
- 🎨 shadcn/ui components in a shared package
- 📦 Turborepo for efficient monorepo builds
- 🧹 Biome for fast linting and formatting
- 🎯 TypeScript with strict mode
- 💅 Tailwind CSS v4 for styling
uvx copier copy --trust gh:nishide-dev/next-monorepo-template my-awesome-projectgit clone https://github.com/nishide-dev/next-monorepo-template.git my-project
cd my-project
pnpm install
pnpm dev.
├── apps/
│ └── web/ # Next.js application
├── packages/
│ ├── ui/ # Shared UI components (shadcn/ui)
│ └── typescript-config/ # Shared TypeScript configurations
├── biome.json # Biome configuration
├── turbo.json # Turborepo configuration
└── pnpm-workspace.yaml # pnpm workspace configuration
Run the following command at the root of the project:
pnpm dlx shadcn@latest add button -c apps/webComponents will be placed in packages/ui/src/components/.
Import components from the @workspace/ui package:
import { Button } from "@workspace/ui/components/button"| Command | Description |
|---|---|
pnpm dev |
Start development server |
pnpm build |
Build for production |
pnpm lint |
Run Biome linter |
pnpm lint:fix |
Run Biome linter with auto-fix |
pnpm format |
Format code with Biome |
pnpm check |
Run lint and format check |
- Node.js >= 20
- pnpm >= 10
MIT