Next.js 16 + Drizzle ORM + Better Auth

The SaaS starter kit that doesn't cut corners.

Better Auth, Stripe billing, and production-ready multi-tenancy — shipped as first-class features, not bolted-on afterthoughts. Stop stitching tutorials. Start building.

npx create-seedstack@latest
Better Auth (OAuth, MFA, magic links)
Drizzle ORM (PostgreSQL, type-safe migrations)
Stripe (checkout, portal, webhooks)
Multi-tenancy (orgs, RBAC, invitations)
Shadcn UI (polished, accessible components)
Deployment (Vercel, Render, self-host)
db/schema.ts
import { pgTable, uuid, text, timestamp } from 'drizzle-orm/pg-core'

export const users = pgTable('users', {
  id: uuid('id').defaultRandom().primaryKey(),
  email: text('email').notNull().unique(),
  name: text('name'),
  createdAt: timestamp('created_at').defaultNow(),
})

export const organizations = pgTable('organizations', {
  id: uuid('id').defaultRandom().primaryKey(),
  name: text('name').notNull(),
  slug: text('slug').notNull().unique(),
  createdAt: timestamp('created_at').defaultNow(),
})

export const memberships = pgTable('memberships', {
  userId: uuid('user_id').references(() => users.id),
  orgId: uuid('org_id').references(() => organizations.id),
  role: text('role').default('member'),
})

Modern tools, no compromises.

Every piece of tech is chosen for production use, not novelty. You deploy with confidence.

Next.js 16
App Router, React 19, Server Actions, streaming. Ship features, not configuration.
Drizzle ORM
Type-safe SQL. No schema drift. Migrations that actually work at the edges.
Better Auth
OAuth, magic links, MFA, TOTP, account linking. SQL-native, no vendor lock-in.
Stripe
Subscriptions, checkout, customer portal, webhooks. Billing that scales with you.
Multi-tenancy
Orgs, roles, invitations, RBAC. Enterprise-ready patterns without the enterprise complexity.
Tailwind v4
Utility-first CSS, CSS variables, no config boilerplate. Build any design without fighting the framework.

Everything your SaaS needs, none of what it doesn't.

Other starter kits give you a pile of dependencies. SeedStack gives you a production-ready foundation.

01

Auth that ships

Better Auth handles OAuth, magic links, email verification, password reset, MFA, and account linking. SQL-native adapters mean no external auth service to lock you in. Configure once, forget it.

02

Billing without the headache

Stripe checkout, customer portal, usage-based billing, and webhook handling — all wired up with proper idempotency. Multi-currency support included. No more debugging Stripe webhooks at 2am.

03

Type-safe everything

Drizzle ORM with Zod schemas, react-hook-form integration, and next-safe-action for server actions. The types flow from your database schema all the way to your form components. Catch errors at write-time, not runtime.

04

Multi-tenancy that scales

Organization-based data isolation, role-based access control (Owner / Admin / Member), member invitations, and seat management. Built for B2B from day one — not retrofitted when you land your first enterprise customer.

05

Production deployment

Environment variable configs for Vercel, Render, and self-hosted. Sentry error tracking, structured logging, health checks, and CI/CD with GitHub Actions. Ship to production with confidence, not guesswork.

06

Docs that don't suck

Every module is documented: what it does, why it's structured that way, and how to extend it. Not just API references — architectural context. The docs you wish every open-source project had.

Why SeedStack exists
"We built the Next.js + Drizzle starter kit we wish existed when we were starting out. The ones we tried looked complete until we tried to ship — then we'd hit a wall: auth was bolted on, billing was missing, multi-tenancy was an afterthought. SeedStack is the kit that doesn't make you choose between speed and quality."

Not a pile of dependencies. A considered foundation.

What you ship, not what you build.

40+
hours saved vs. stitching tutorials
1
command to start a production-ready project
0
vendor lock-in. Better Auth is yours.

Stop scaffolding. Start shipping.

SeedStack gives you the foundation so you can focus on what makes your product different: your features, your UX, your business logic.

npx create-seedstack@latest my-saas

Works on macOS, Linux, and Windows. PostgreSQL required. Zero vendor lock-in.