Introduction
ScaleRocket — the Next.js + Supabase SaaS boilerplate that gets you from zero to production in days, not months.
ScaleRocket
ScaleRocket is a production-ready SaaS boilerplate built as a monorepo with Next.js, Vite + React, Supabase, Stripe, and Resend. It gives you everything you need to launch a SaaS product — authentication, payments, emails, a dashboard, and an admin panel — so you can focus on building your actual product.
What's Included
- Marketing site — Next.js landing page with SEO, blog, pricing, and waitlist (
apps/web) - User dashboard — Vite + React SPA with TanStack Router and a credits-based system (
apps/app) - Admin panel — Internal ops dashboard for managing users, subscriptions, and content (
apps/ops) - Shared packages — UI components, config, types, and email templates (
packages/*) - Authentication — Email/password + OAuth (Google, GitHub) via Supabase Auth
- Payments — Stripe subscriptions with monthly/yearly pricing and webhook handling
- Transactional emails — React Email templates sent via Resend
- Database — PostgreSQL with Row Level Security via Supabase
- Edge Functions — Serverless API endpoints on Supabase Edge Functions
- Credits system — Built-in usage-based billing with monthly allowance and reset
Quick Links
| Topic | Description |
|---|---|
| Ship in 5 Minutes | Get up and running fast |
| Supabase Setup | Database, auth, and storage |
| Stripe Setup | Payments and subscriptions |
| Emails | Transactional emails with Resend |
| Authentication | Auth flows and protected routes |
| API Calls | Edge Functions and client calls |
| Credits System | Usage-based billing |
| Admin Panel | Manage users and content |
| Deployment | Ship to production |
Prerequisites
Before you start, make sure you have:
- Node.js 18+ — Download here
- pnpm — Install with
npm install -g pnpm - Supabase account — Sign up free
- Stripe account — Sign up free
- Resend account — Sign up free
Project Structure
scalerocket/
├── apps/
│ ├── web/ # Next.js marketing site (port 3000)
│ ├── app/ # Vite + React dashboard (port 5173)
│ └── ops/ # Vite + React admin panel (port 5174)
├── packages/
│ ├── ui/ # Shared UI components
│ ├── config/ # Shared configuration
│ ├── types/ # Shared TypeScript types
│ └── emails/ # React Email templates
├── supabase/
│ ├── migrations/ # Database migrations
│ └── functions/ # Edge Functions
├── turbo.json
├── pnpm-workspace.yaml
└── package.jsonscalerocket/
├── apps/
│ ├── web/ # Next.js marketing site (port 3000)
│ ├── app/ # Vite + React dashboard (port 5173)
│ └── ops/ # Vite + React admin panel (port 5174)
├── packages/
│ ├── ui/ # Shared UI components
│ ├── config/ # Shared configuration
│ ├── types/ # Shared TypeScript types
│ └── emails/ # React Email templates
├── convex/
│ ├── schema.ts # Database schema
│ ├── auth.ts # Auth configuration
│ ├── functions/ # Serverless functions
│ └── _generated/ # Auto-generated types
├── turbo.json
├── pnpm-workspace.yaml
└── package.jsonReady?
Head to Ship in 5 Minutes to get your project running locally.