Saavo documentation
Turn the template into a paid product, from environment setup to deployment.
Saavo is a SaaS template with authentication, billing, permissions, accounts, support tickets, analytics, and an admin dashboard already implemented. Most setup involves editing config/, filling in .env, and replacing the copy, without having to build sign-in and payments from scratch.
The documentation follows the sequence of preparing your environment, running the template, developing features, and deploying the application. For field definitions, troubleshooting, or project updates, go directly to the reference, troubleshooting, or upgrade and maintenance chapters.
Find the right guide
| Your goal | Chapter |
|---|---|
| Register accounts, install development tools, and prepare third-party services | Prerequisites |
Run the unmodified template locally and deploy it to workers.dev | Quickstart |
| Build a real product from the default template | Build a product |
| Find out how to enable or integrate a feature | Features |
| Find an implementation for a specific requirement | Development recipes |
| Configure production resources and a custom domain, then verify the deployment | Deployment |
Start with configuration
The documentation identifies which tasks only require configuration changes and which require code. The sample product catalog uses the boolean starter_download entitlement. The underlying system supports quotas, Credits, and one-time purchases, but the default plans do not enable them.
What the template includes
- Email and password sign-up and sign-in, email verification, password recovery, 2FA, and Google / GitHub sign-in
- Stripe Checkout, subscriptions, the billing portal, webhooks, and role and entitlement grants after a purchase
- Admin dashboard: users, subscriptions, one-time purchases, tickets, affiliates, notifications, analytics, logs, and OAuth clients
- User-facing features: accounts, tickets, notifications, the affiliate program, legal pages, and documentation
- D1, KV, R2, Queues, Durable Objects, and Cron on Cloudflare Workers
The brand name, plans, legal pages, domain names, and Cloudflare resource IDs are examples. You must replace them with your own before launch.