Skip to content

A modern, type-safe, and high-performance SaaS starter template built with a monorepo architecture.

License

Notifications You must be signed in to change notification settings

nrjdalal/zerostarter

Repository files navigation

ZeroStarter - The SaaS Starter

A modern, type-safe, and high-performance SaaS starter template built with a monorepo architecture.

Important

ZeroStarter is currently in Release Candidate (RC) status. All implemented features are stable and production-ready. We're actively adding new features and integrations day-by-day.

⚙️ Architecture and Tech Stack

Note

For detailed information about the architecture and tech stack, see the Architecture documentation.

Graph Build

This project is a monorepo organized as follows:

.
├── api/
│   └── hono/      # Backend API server (Hono)
├── web/
│   └── next/      # Frontend application (Next.js)
└── packages/
    ├── auth/      # Shared authentication logic (Better Auth)
    ├── db/        # Database schema and Drizzle configuration
    ├── env/       # Type-safe environment variables
    └── tsconfig/  # Shared TypeScript configuration

📖 View full architecture →

🗺️ Roadmap

We're actively working on integrations for AI, analytics, background tasks, email, payments, and more.

📖 View detailed roadmap →

🔥 Why ZeroStarter?

Architecture & Best Practices as a Service — ZeroStarter isn't just a starter template, it's a complete blueprint for building production-ready SaaS applications with battle-tested patterns and practices.

  • Modular Architecture — Clean, plug-and-play packages that work independently or together. Swap components, extend functionality, or customize without breaking the system
  • End-to-End Type Safety — Hono RPC ensures type safety from database to frontend. Catch errors at compile time, ship with confidence
  • Clean Code Practices — Well-structured monorepo with separation of concerns, making it easy to understand, maintain, and scale
  • Production-Ready Performance — Optimized with Bun runtime and Turborepo for blazing-fast development and builds
  • Beautiful UI Out of the Box — Shadcn UI components with Tailwind CSS, ready to customize or use as-is
  • Enterprise-Grade Auth — Better Auth integration with GitHub, Google, and more — fully configured and ready to extend
  • Comprehensive Documentation — Every pattern, practice, and decision documented with Fumadocs and AI-optimized llms.txt
  • Deploy-Ready — Docker and Vercel configurations included, so you can ship to production in minutes, not days

📖 View full why ZeroStarter? →

🔌 Type-Safe API Client

Note

For comprehensive details and examples, see the Type-Safe API documentation.

This starter utilizes Hono RPC to provide end-to-end type safety between the backend and frontend.

  • Backend: Routes defined in api/hono/src/routers are exported as AppType at api/hono/src/index.ts.
  • Frontend: The client at web/next/src/lib/api/client.ts infers AppType request/response types using hono/client.

Usage Example

import { apiClient } from "@/lib/api/client"

// Fully typed request and response
const res = await apiClient.health.$get()
const data = await res.json()

📖 Type-Safe API documentation→

🚀 Quick Start

# Clone the template
bunx gitpick https://github.com/nrjdalal/zerostarter/tree/main
cd zerostarter

# Install dependencies
bun install

# Set up environment variables (see docs)
cp .env.example .env

# Set up database
bun run db:generate
bun run db:migrate

# Start development
bun dev

📖 Complete installation guide →

📚 Documentation

🤝 Contributing

Contributions are welcome! Please read our contributing guidelines first.

📖 View contributing guidelines →

📄 License

MIT License — see LICENSE.md for details.


⭐ Star this repo if you find it helpful, and follow @nrjdalal for updates!

About

A modern, type-safe, and high-performance SaaS starter template built with a monorepo architecture.

Resources

License

Stars

Watchers

Forks

Sponsor this project