A production-ready monorepo starter kit for modern full-stack applications featuring Hono API, Vite + shadcn UI, Drizzle ORM, BullMQ queues, and Dockerized infrastructure. Powered by Turborepo ⚡
- 🔥 Hono.js API server with TypeScript
- ⚡ Vite React frontend with shadcn/ui components
- 🐘 PostgreSQL database with Drizzle ORM
- 📮 Redis queue system with BullMQ
- 🐳 Docker Compose for Postgres & Redis
- 📦 Dev Container setup for VS Code
- ⚡ Turborepo optimized monorepo architecture
- Node.js v18+
- Docker & Docker Compose
- VS Code Dev Containers (optional but recommended)
- Clone the repository
git clone https://github.com/shakibhasan09/turbo-repo-starter-kit.git
cd turbo-repo-starter-kit
- Install dependencies
pnpm install
- Setup environment variables
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.local.example apps/web/.env.local
- Start database & redis
docker-compose up -d
- Run development servers
pnpm dev
- Hono - Ultrafast edge-ready web framework
- Drizzle ORM - TypeScript ORM for PostgreSQL
- Zod - Schema validation
- Redis - Queue persistence
- Vite - Next-gen frontend tooling
- shadcn/ui - Beautiful UI components
- React Query - Data fetching
- React Router - Tanstack Router
- Tailwind CSS - Styling
- PostgreSQL - Relational database
- Drizzle Kit - Database migrations
- Turborepo - Monorepo build system
- Docker - Containerization
- Dev Containers - Consistent development environment
turbo-repo-starter-kit/
├── apps/
│ ├── api/
│ │ ├── src/
│ │ └── package.json
│ │
│ └── web/
│ ├── src/
│ └── package.json
│
├── packages/
│ ├── postgres-database/
│ │ ├── src/
│ │ └── package.json
│ │
│ └── queue-worker/
│ ├── src/
│ └── package.json
│
├── docker-compose.yml # Postgres & Redis services
└── package.json # Turborepo workspace config
- Update database credentials in
apps/api/.env
:
DATABASE_URL="postgres://user:pass@localhost:5432/dbname"
REDIS_URL="redis://localhost:6379"
- Configure frontend in
apps/web/.env
:
VITE_API_URL=http://localhost:3000
Command | Description |
---|---|
pnpm dev |
Start web + api in dev mode |
pnpm build |
Build all packages |
pnpm db:generate |
Generate Drizzle migrations |
pnpm db:migrate |
Run database migrations |
pnpm format |
Format all code with Prettier |
pnpm lint |
Lint all packages |
Contributions welcome! Please follow:
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a pull request
MIT License - see LICENSE for details
Happy coding! 🚀 Built with ❤️ by Sakib Hasan