ScaleRocket/Web

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
TopicDescription
Ship in 5 MinutesGet up and running fast
Supabase SetupDatabase, auth, and storage
Stripe SetupPayments and subscriptions
EmailsTransactional emails with Resend
AuthenticationAuth flows and protected routes
API CallsEdge Functions and client calls
Credits SystemUsage-based billing
Admin PanelManage users and content
DeploymentShip to production

Prerequisites

Before you start, make sure you have:

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.json
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
├── convex/
│   ├── schema.ts     # Database schema
│   ├── auth.ts       # Auth configuration
│   ├── functions/    # Serverless functions
│   └── _generated/   # Auto-generated types
├── turbo.json
├── pnpm-workspace.yaml
└── package.json

Ready?

Head to Ship in 5 Minutes to get your project running locally.

On this page