Built for Claude Code, Cursor and Copilot

The Django SaaS Starter Your AI Agent Already Understands

Accounts, Stripe billing with credits, an admin panel, background jobs, email, AI and a Coolify deploy are finished and tested. You describe your product to Claude Code, and a 135-line CLAUDE.md tells it where each piece goes.

Claude Codeready CLAUDE.md135 lines Cursor Copilot
7prompts built the demo 797files 1420tests passing 2languages · RTL
01 why this exists

Your product idea waits behind a month of plumbing

Week one

Accounts. Sign-up, email verification, two-factor, sessions, password reset, deletion that also cancels billing.

Week two

Money. Stripe Checkout, webhooks that arrive out of order and twice, a credits ledger that never grants twice, refunds, dunning.

Weeks three and four

Everything around it. An admin panel, background jobs, emails, error tracking, backups, a deploy that works. Still no feature of yours.

All of that is here, tested, and described in one file your agent reads. Your first prompt is about your product.

what your agent reads first

One way to do each thing, written where your agent looks first

Claude Code loads CLAUDE.md on every session. It says where a feature goes, names the one helper for each job, and lists the rules the checks enforce. Fourteen skills add the detail only when a task needs it.

CLAUDE.md
# CLAUDE.md

Django SaaS boilerplate. Students extend it by
prompting you. Keep every change in the shape
below so the next prompt is as cheap as this one.

⋮

## One way to do each thing

run work later / repeat it  @task + enqueue(fn, *ids)
send an email               send_email(to, template, context)
charge credits              consume_credits(user, "key", …)
sell plans / gate on one    user.has_plan("pro")
tell a user something       notify(user, title, body, url, …)
call Claude                 complete(prompt, …)
add a panel page            PanelSection / PanelPage
store an upload             store_image() / store_document()
translate                   {% translate %} / gettext_lazy

Never import django.core.mail, django_q or
anthropic in an app.
CLAUDE.md: the opening, then the "One way to do each thing" table, first two columns only. Each ⋮ marks a gap.
7
prompts built the live demo

InvoiceFlow was built on a fresh copy by prompting Claude Code: invoices, a Pro plan with Stripe, an AI payment reminder, automatic reminder emails, a help page and its own landing page. 38.5 minutes of sessions, every one finished with the full check suite green.

14
skills that load on demand

Billing, credits, emails, AI, the panel, realtime, translations, deploy and more. In the run, the billing prompt loaded billing-plans and the AI prompt loaded ai-integration on their own.

1,420
tests your agent has to keep green

A hook makes Claude run uv run poe check before it finishes: lint, format, templates, right-to-left CSS, migrations and the tests with an 80 % coverage gate. It stands at 94 %.

1
command to start a feature

manage.py startfeature invoices --credits writes the app, wires the settings, URLs, sidebar and browser test, so the agent starts every feature in the same shape.

the boring-on-purpose stack
Django 5.2 LTS Python 3.13 uv HTMX 2 Alpine 3 Tailwind v4 (no Node) Stripe django-q2 Channels Anthropic SDK PostgreSQL Docker + Coolify
02 what's inside

Every system you'd build yourself — already wired up

Pick a system to see what is done. Every part below ships working, and 1,420 tests say so.

Accounts and Security

Sign-up that verifies
Email and password, login by emailed code, Google and GitHub, mandatory email verification.
Two-factor built in
Authenticator app, recovery codes and optional passkeys. The admin panel can require it.
Sessions you can revoke
A per-device sessions page, new-device login emails, API keys with scopes.
Export and delete
Users download their data and delete their account; a live subscription is cancelled at Stripe first.
Secure by default
A strict Content-Security-Policy with nonces, rate limits on abuse-prone views, secrets scrubbed from every log.

Billing and Credits

Plans and packs are data
Create a plan and its prices in the panel, press Sync, and Stripe has them. No code for a new price.
Stripe Checkout and portal
Subscriptions, one-off credit packs, and the customer portal for cards, invoices and cancelling.
A ledger that never grants twice
Plan credits on start and on every paid renewal, pack credits per payment, keyed so a webhook replay changes nothing.
Dunning and refunds
A failed renewal starts a grace period and an email; a refunded pack takes its credits back.
Tested against real Stripe
Checkout, renewal on a Stripe test clock, a failed card, the portal, refunds and replays, in two API versions.

Admin Panel

A dashboard that answers
Users, MRR, credits used and sold, AI spend, failed jobs, unresolved errors, email failures.
Users, roles, impersonation
Owner, admin and support roles, search and CSV export, sign in as a user behind a visible banner.
Every setting in one place
Site name, billing mode, AI budget and more change at runtime. No deploy for a toggle.
Errors and audit trail
Errors grouped by fingerprint, every admin write recorded, webhook events with a Replay button.

Jobs, Email and Realtime

Background jobs
Tasks and schedules with django-q2; a schedules.py in your app is all a weekly job needs.
Email with a log
SMTP or Resend, templates previewed in the panel, every send logged with its status.
Notifications, live
A bell that updates over websockets, with an optional email copy per kind.
Chat rooms
Realtime rooms on Django Channels, with rate limits and a moderation page.

AI

One function for Claude
complete() with a system prompt and an optional schema, called from a task so a page never waits.
A monthly budget cap
Calls are refused once the month's estimated spend reaches your limit. Every call is logged with its cost.
Charge credits for it
The worked example drafts payment reminders for 1 credit each and refunds the credit when the call fails.
Off until you turn it on
Nothing calls Claude until the key is set and AI is switched on in the panel.

Deploy and Operations

Coolify, verified
The guide was followed on a fresh server: Coolify installed in 135 s, first deploy in 343 s, HTTPS live.
Or any VPS with Caddy
One compose command; up with a Let's Encrypt certificate in 193 s on a fresh droplet.
Backups you can restore
Nightly database and media backups; the restore script was run and the data came back.
Deploy from your laptop
uv run poe deploy triggers Coolify and waits until the new release answers healthy.
Health checks and CI
Liveness and readiness endpoints, GitHub Actions and GitLab CI, Docker images on GHCR.

Languages and UI

English and Arabic, RTL
Both languages ship translated, and a check fails any CSS that would break right-to-left.
Tailwind without Node
Tailwind v4 through its standalone CLI. No npm, no node_modules.
45 components
Buttons, cards, tables, modals, forms, empty states, a live styleguide page.
Dark mode
Design tokens in one CSS file flip for dark mode; rebrand by changing them.

Built for Your Agent

CLAUDE.md, 135 lines
Where things go, one way to do each thing, the rules the checks enforce.
14 skills, 7 commands
/new-feature, /ship, /deploy and more; skills load on their own when a task needs them.
A hook that runs the checks
Claude runs the full check suite before it says it is done, then tells you what changed, what passed and what is yours to decide.
A prompt cookbook
Tested prompts with what each one built and what it cost.
1,420 tests, 140 in a browser
Pytest at 94 % coverage, plus Playwright in light, dark, English and Arabic.
03 see it running

Real screens, not mockups

Every screen below is the boilerplate running unmodified. Tap through the tour.

Django SaaS Boilerplate
The signed-in InvoiceFlow app with its sidebar, credit balance and dashboard Pricing page with a Pro plan at 19 dollars a month and a 50-credit pack InvoiceFlow invoices list with paid, unpaid and overdue badges Admin panel dashboard with users, MRR, credits used and AI spend An overdue invoice with an AI-drafted payment reminder email The InvoiceFlow landing page live on its own domain

Where your product lives: the signed-in app, here with InvoiceFlow built on top A Pro plan and a credit pack, created in the panel and synced to Stripe The first feature, built from one prompt: invoices for 1 credit each The admin panel with real test-mode revenue from the live demo An AI feature charged in credits: a payment reminder drafted in about 5 seconds Deployed on Coolify with HTTPS, its landing page rewritten by one prompt

04 why not just…

This template vs. the alternatives

Against wiring it yourself, or starting from a free skeleton with auth and a theme.

Feature This template Build from scratch Generic boilerplate
Accounts with verification, 2FA and sessions partly
Stripe subscriptions, packs and portal some
Credits ledger with refunds on failure
Admin panel with MRR, errors and audit
AI with a monthly budget cap
English and Arabic (RTL) translated
CLAUDE.md + skills for your agent
Deploy guide followed on a fresh server notes
You own the code, no per-seat fee
Teams and organizations you build it
05 who it's for

You'll get the most out of it if…

Solo builders with a SaaS idea

You know what the product does. You do not want to spend a month on accounts, billing and a panel first.

People who build with AI

You describe the feature and check what came back. CLAUDE.md and the skills keep Claude Code in one shape.

Builders selling an AI feature

Credits, a budget cap and refunds on failure are the hard parts of charging for AI. They are done.

Django developers who want a head start

A conventional Django 5.2 codebase with services, tests and a deploy you can read, not a framework to learn.

pricing

Buy it solo — or bundled and save

Just this boilerplate, or a bundle that unlocks the courses and every other boilerplate too.

Django SaaS Boilerplate

A Django SaaS starter written for Claude Code: accounts, Stripe billing with credits, an admin panel, jobs, email, AI and a Coolify deploy, finished and tested. You describe the product.

  • Django SaaS Boilerplate $49
  • Lifetime access to all updates
$49 one-time
Get Django SaaS Boilerplate
14-day money-back guarantee
★ Best value
Build With AI 1.0

The course + all 4 boilerplates.

  • Build With AI 1.0Course $149
  • Desktop App Boilerplate $49
  • Python MCP Server Boilerplate $79
  • Mobile App Boilerplate $59
  • Django SaaS Boilerplate $49
  • Private Discord community $99
  • Lifetime access to all updates
Total value $484
$149 one-time
You save $335 (69%)
Get Build With AI 1.0
14-day money-back guarantee
Bundle
Solo Builder Complete

Every course, boilerplate, and product I build, in one bundle.

  • Agentic Automation 3.0CourseComing · In production $149
  • Build With AI 1.0Course $149
  • Self Hosting 2.0Course $69
  • Vibe Engineering Blocks $0
  • Vibe Engineering Blocks Full Edition $29
  • Desktop App Boilerplate $49
  • Python MCP Server Boilerplate $79
  • Mobile App Boilerplate $59
  • Django SaaS Boilerplate $49
  • Business Ideas Database $49
  • Private Discord community $99
  • Lifetime access to all updates
Total value $780
$199 one-time
You save $581 (74%)
Get Solo Builder Complete
14-day money-back guarantee
🔒 Secure checkout · Stripe & PayPal ⚡ Instant GitHub access
questions

Frequently asked questions

What exactly do I get when I buy?

An invite to the private GitHub repository with the full source: 797 files, 13 Django apps, 1,420 passing tests, 26 reference docs, 14 Claude Code skills and a tested prompt cookbook. Updates come through git, for the life of the product. The public docs on this site take you from the invite to a deployed app.

What is the license?

Single-app commercial license, in plain words: build and sell ONE commercial product per purchase, plus unlimited learning projects and prototypes. Modify anything, keep your copy private, deploy anywhere. You may not republish or resell the template itself. What you build on it is yours.

Do I need to know Django?

Not to start. The docs build InvoiceFlow by prompting Claude Code, show what to check in each answer, and the tests tell you when something broke. A developer gets a normal Django 5.2 project with services, tests and type hints.

Can Claude Code really build features on it?

We built InvoiceFlow that way, on a fresh copy, with the prompts shown in the docs: invoices, a Pro plan sold through Stripe, an AI payment reminder, automatic reminder emails, a help page and the landing page. 7 prompts, 38.5 minutes of sessions, every check green. One AI draft came out wrong the first time (it did not know today's date); the docs show that answer and the one-line follow-up that fixed it.

What do I need installed?

Git. The setup script installs uv if it is missing, and uv brings Python 3.13. No Docker and no Node for local work: it runs on SQLite out of the box. Measured: 237 seconds for a first setup on Windows with nothing cached, 98 seconds after that.

Does it work on Windows?

Yes, Windows is where the docs were written and the setup was timed. One rule: clone to a short path like C:\code\myapp, because some packages nest deep inside the virtual environment. The setup script warns you if the path is too long.

Do I need Stripe or an AI key to start?

No. Billing and AI stay off until you add their keys and switch them on. The first feature in the docs needs no key at all. Stripe works in test mode with card 4242 4242 4242 4242.

What is NOT included?

Teams and organizations (subscriptions belong to one user), a mobile JWT API, and a CMS. The front end is HTMX and Alpine, not React. If you need teams on day one, a starter that has them will save you time. If you want a free skeleton with auth and a theme, there are good free Django templates on GitHub.

How do updates reach me?

Through git. Start your product with GitHub's "Use this template", add the boilerplate as an upstream remote, and merge it when we release. The docs show the first merge, which needs one extra flag, and what to do when a translation file conflicts.

I already own Vibe Engineering or the Solo Builder bundle. Do I buy this?

No. Both bundles include it, and owners get access the day it is published. Do not buy it twice.

Stop wiring plumbing. Start describing your product.

$49 once. Lifetime updates. One commercial app.

Get Django SaaS Boilerplate →