Next.js 15 · Clerk · Drizzle · Postgres RLS

Ship your SaaS on day one.

A production-ready starter with auth, multi-tenancy, and Row-Level Security already solved — so you can build the product, not the plumbing.

Multi-tenant by default

Every user gets an organization on signup. Data is isolated per tenant with Postgres Row-Level Security — proven by a test, not a promise.

Auth & MFA solved

Email, Google, GitHub, magic links, and MFA via Clerk — synced to your database through signed webhooks.

Teams & RBAC

Server-enforced roles (owner / admin / member), a members UI, and native team invites — wired end to end.

Type-safe data

Drizzle ORM + Postgres, versioned migrations, and a defense-in-depth tenant-context wrapper on every query.

Production hygiene

Env validation, structured logging, rate limiting, error tracking, CI, a hardened Dockerfile, and a health check.

Batteries included

Transactional email, error boundaries, and a demo CRUD resource showing the pattern to copy for your own.

SaaS-Shell — multi-tenant SaaS starter kit