Learn from OSS
Open SaaS

Introduction to Open SaaS

Understand Open SaaS, a production-ready full-stack SaaS starter template built on Wasp

Introduction to Open SaaS

TL;DR for Product Managers

Open SaaS is a starter kit for building SaaS products. Instead of spending months building authentication, payments, and admin dashboards from scratch, developers clone this template and get all of that on day one. Think of it as a "business in a box" for software products — auth, billing, AI features, analytics, and admin UI all included.

What is Open SaaS?

Open SaaS is a production-ready, full-stack SaaS starter template built on the Wasp framework. It provides a complete foundation for building modern SaaS applications — the kind that charge subscriptions, handle user accounts, and process payments.

It's not a SaaS product itself — it's the starting point developers use to build their own SaaS product.

The Product at a Glance

DimensionDetails
What it isA starter template for building subscription-based SaaS apps
Who uses itSolo developers, startups, and small teams building SaaS products
What's includedAuth, payments, file uploads, AI integration, analytics, admin panel
Core techWasp (React + Node.js + Prisma + PostgreSQL)
Business model built inFreemium + subscription tiers + one-time credit purchases
Get startedwasp new -t saas — one command

What's Inside the Box

Open SaaS ships with everything a SaaS product needs on day one:

┌─────────────────────────────────────────────────────────────┐
│                        Open SaaS                            │
│                                                             │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │   Auth   │  │ Payments │  │    AI    │  │  Admin   │   │
│  │          │  │          │  │          │  │Dashboard │   │
│  │• Email   │  │• Stripe  │  │• OpenAI  │  │• Users   │   │
│  │• OAuth   │  │• Lemon   │  │• GPT-3.5 │  │• Stats   │   │
│  │• Verify  │  │  Squeezy │  │• Credits │  │• Revenue │   │
│  │• Reset   │  │• Plans   │  │• Demo App│  │• Metrics │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
│                                                             │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │  Files   │  │Analytics │  │  Email   │  │   Blog   │   │
│  │          │  │          │  │          │  │  & Docs  │   │
│  │• S3      │  │• Google  │  │• SendGrid│  │• Astro   │   │
│  │• Upload  │  │• Plausible│  │• Mailgun │  │• Starlit │   │
│  │• Presign │  │• Custom  │  │• Verify  │  │• SEO     │   │
│  └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
└─────────────────────────────────────────────────────────────┘

The Tech Stack — Why Each Piece Exists

LayerTechnologyWhy It's Used
Meta-frameworkWasp 0.18+Full-stack glue: auto-generates auth, routes, API, and DB client
FrontendReact 18Component-based UI
Type safetyTypeScript 5.8End-to-end type safety from DB schema to frontend
StylingTailwind CSS 3 + ShadCN UIUtility-first CSS + accessible component library
Form handlingReact Hook Form + ZodValidated forms with schema-based validation
Backend runtimeNode.js 22+JavaScript runtime for server-side logic
ORMPrisma 5.19Type-safe database access with auto-generated client
DatabasePostgreSQLRelational database for structured SaaS data
Job queuePgBoss (via Wasp)Background jobs using the existing PostgreSQL instance
PaymentsStripe + Lemon SqueezyDual payment processor support for global reach
AIOpenAI GPT-3.5-turboAI features with function calling
File storageAWS S3User file uploads via presigned URLs
AnalyticsGoogle Analytics + PlausibleTraffic and user behavior tracking
EmailSendGrid / MailgunTransactional emails (verification, password reset)
E2E testsPlaywrightEnd-to-end testing with CI integration
Blog/DocsAstro + StarlightMarketing site and documentation

For PMs: What is Wasp?

Wasp is a full-stack framework that acts as the glue between React (frontend), Node.js (backend), and Prisma (database). You define your app's structure in a single .wasp config file — routes, authentication, background jobs, and data model — and Wasp generates the boilerplate code for all of it. This means less code to write and maintain, and fewer integration bugs.

Built-In Business Model

Open SaaS includes a complete freemium + subscription monetization system:

TierPriceWhat Users Get
Free$03 AI credits on signup
Hobby$9.99/monthUnlimited access (subscription)
Pro$19.99/monthPremium features (subscription)
Credits$9.99 one-time10 additional AI credits

For PMs: The Credit System

The credit system is a common SaaS monetization pattern. Free users get a taste (3 credits) to try AI features. Once credits run out, they either subscribe for unlimited access or buy more credits one-time. Active subscribers bypass the credit system entirely. This gives three conversion paths: free → subscriber, free → credit buyer, credit buyer → subscriber.

Key Statistics

MetricValue
Total files300+ TypeScript/React files
Lines of code~50,000+ LOC
Language100% TypeScript
React components80+
Backend operations35+
E2E test coverageCritical paths (landing, pricing, AI demo)

Why Use Open SaaS?

1. Weeks of Work — Done in One Command

Instead of building auth, payments, and admin from scratch (typically 4-8 weeks), you start with everything working:

# That's it. Full SaaS app ready to customize.
wasp new -t saas

2. Dual Payment Provider Support

Most starters only support Stripe. Open SaaS supports both Stripe and Lemon Squeezy, making it viable for creators and businesses in regions where Stripe isn't available.

3. AI-Ready

Ships with a working OpenAI integration including function calling, a demo scheduling app, and the credit system to monetize AI features.

4. Complete, Not Minimal

Unlike "bare bones" starters, Open SaaS includes the features you'd eventually build anyway: admin dashboard, analytics integration, email templates, file uploads, and E2E tests.

What's Next

Resources