A modern, production-ready monorepo template featuring Next.js, Node.js, Supabase, and Prisma.
- ποΈ Monorepo Structure using Turborepo
- π― Type Safety with TypeScript
- π Frontend with Next.js
- π οΈ Backend with Node.js & Express
- π¦ Database with Prisma & Supabase
- π Version Control with semantic-release
- π Code Quality with ESLint & Prettier
- πͺ Git Hooks with lefthook
- πββοΈ Fast Builds with Turborepo's caching
npx @jagadhis/fullstack-monorepo-template my-app
cd my-app
npm run dev
.
βββ apps/
β βββ frontend/ # Next.js frontend
β βββ backend/ # Node.js & Express backend
βββ packages/
β βββ types/ # Shared TypeScript types
βββ package.json
βββ turbo.json
npm run dev
- Start development serversnpm run build
- Build all packagesnpm run lint
- Lint all packagesnpm run test
- Run tests across packages
- Frontend (.env.local):
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_key
- Backend (.env):
DATABASE_URL=your_database_url
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project follows Conventional Commits:
feat:
New featuresfix:
Bug fixesdocs:
Documentation changesstyle:
Code style changesrefactor:
Code refactoringtest:
Adding or modifying testschore:
Maintenance tasks
MIT Β© [jagadhis]
If you find this template helpful, please consider giving it a βοΈ on GitHub!
For issues and feature requests, please use the GitHub issues page.