DEV Community

mocsa03
mocsa03

Posted on

How I Built a Complete SaaS in 3 Days Using My Own Boilerplate

Every time I start a new SaaS project, I waste 2-3 weeks rebuilding the same infrastructure:

  • Authentication (GitHub, Google, email/password)
  • Payment processing (subscriptions, webhooks, billing portal)
  • Dashboard (sidebar navigation, stat cards, settings)
  • Database schema (users, plans, billing)
  • Deployment configuration

So I built ShipKit — a production-ready SaaS starter kit that lets you skip straight to building your product.

What's Inside

ShipKit is a complete Next.js 14 codebase with everything a SaaS needs:

Authentication (3 providers, zero config)

// GitHub, Google, and Email/Password — all wired up
// Just add your API keys to .env.local
GITHUB_CLIENT_ID=your_id
GOOGLE_CLIENT_ID=your_id
Enter fullscreen mode Exit fullscreen mode

NextAuth.js handles the heavy lifting. JWT sessions, provider callbacks, account linking — it's all there.

Payments (LemonSqueezy integration)

  • Subscription checkout with one API call
  • Webhook handler for subscription lifecycle events
  • Billing portal for customers to manage their plans
  • Supports PayPal, Apple Pay, Google Pay

Dashboard

A beautiful dark-theme dashboard with:

  • Sidebar navigation
  • Stat cards
  • Settings page
  • Billing management
  • Responsive design

Database (Supabase)

  • Postgres with instant APIs
  • Migration files ready to run
  • User management schema
  • Plan and billing data structures

The Tech Stack

Layer Technology
Framework Next.js 14 (App Router)
Language TypeScript
Styling Tailwind CSS
Auth NextAuth.js
Database Supabase (Postgres)
Payments LemonSqueezy
Deployment Vercel

5-Minute Setup

# 1. Download and extract
unzip shipkit.zip -d my-saas

# 2. Install dependencies
cd my-saas && npm install

# 3. Configure environment
cp .env.example .env.local
# Edit .env.local with your API keys

# 4. Run database migration
# Paste SQL from supabase/migrations/001_init.sql into Supabase SQL Editor

# 5. Start building
npm run dev
Enter fullscreen mode Exit fullscreen mode

Your SaaS is running at http://localhost:3000 with auth, payments, and dashboard fully functional.

Live Demo

Want to see ShipKit in action? Check out FormCatch — a form backend SaaS built entirely with ShipKit.

Why Not Use Other Alternatives?

I've tried ShipFast, SupaStarter, and others. They're great, but:

  1. ShipKit uses LemonSqueezy instead of Stripe — global coverage, PayPal support, handles sales tax automatically
  2. 3 auth providers out of the box — most alternatives only include OAuth
  3. Supabase instead of raw Postgres — instant APIs, real-time, and a generous free tier
  4. No external dependencies for password hashing — uses Node.js built-in crypto (pbkdf2)

Pricing

  • Starter: $99 (1 project license)
  • Pro: $199 (unlimited projects + 6 months updates)
  • Enterprise: $399 (lifetime updates + priority support)

One-time purchase. No subscriptions. No recurring fees.

Check it out →


What infrastructure do you rebuild every time you start a new project? I'd love to hear what features matter most to you.

Top comments (0)