Superfast SaaS starter

Ship your SaaS faster than your coffee cools.

ReadyKit gives you multi-tenant workspaces, Stripe billing, OAuth auth, and production-ready UI blocks. Zero boilerplate, maximum velocity.

5 min
Setup to running
2.8B+
rows handled
392%
faster iteration
Workspace Switcher

Nike Studio

Monthly plan · 11 members

$14k

Lace Collective

Pro plan · 4 members

$4.8k

Solo Maker

Starter · 1 member

$499

Invisible multi-tenancy

Workspaces that just work for every user.

Solo founders get instant sandboxes, teams get collaboration superpowers, and you get a sleeping backend.

Solo Flow

Login and get an instant workspace. No setup, no friction - straight to building.

Team Flow

Add teammates and controls appear. Workspace switcher, roles, invites, and audit logs built in.

Dev Flow

One helper call, zero context leaks. All queries auto-scope to the current workspace.

All killer, no filler

Everything you need to ship fast.

All the hard parts bundled into gorgeous cards.

🏷️

Multi-tenant workspaces

Complete isolation that scales from solo builders to enterprise-grade customers.

  • Workspace-scoped models
  • Auto query filtering
  • Member admin UI
💳

Stripe billing baked in

Hosted checkout, subscription lifecycle, metered usage.

  • Portal ready
  • Webhook workflows
  • Fail-safe retries
🔐

OAuth + MFA login

Google and GitHub out of the box plus TOTP 2FA.

  • Passwordless friendly
  • Role-based access
  • Session hardening

Modern UX kit

Prebuilt dashboard screens, modals, and marketing blocks.

  • Responsive defaults
  • Accessible patterns
  • Code or no-code friendly

Three-command setup

Clone it, configure it, run it.

No config hell, no yak shaving.

1

Clone & Setup

One script configures everything.

git clone [email protected]:level09/readykit.git
cd readykit
./setup.sh
2

Configure Keys

Add OAuth and Stripe secrets.

GOOGLE_OAUTH_CLIENT_ID=your_id
STRIPE_SECRET_KEY=sk_test_...
STRIPE_PRICE_ID=price_...
3

Run & Deploy

Local dev or Docker production.

uv run flask create-db
uv run flask run
docker compose up --build

Developer-first

Business logic stays beautiful.

Workspace scoping disappears behind elegant helpers.

Define your model

python
from enferno.services.workspace import WorkspaceScoped

class Invoice(db.Model, WorkspaceScoped):
    workspace_id = db.Column(db.Integer, db.ForeignKey('workspace.id'))
    number = db.Column(db.String(50))
    amount = db.Column(db.Numeric(10, 2))
    # add your fields

Protect every route

python
from enferno.services.workspace import require_workspace_access

@app.get("/workspace//invoices/")
@require_workspace_access("member")
def invoices(workspace_id):
    invoices = Invoice.for_current_workspace()
    return render_template("invoices.html", invoices=invoices)

All queries auto-filter. Focus on value, not plumbing.

Battle-tested toolkit

Modern stack, zero drama.

Everything wired to production defaults.

🐍 Python 3.11+
🔥 Flask 3
🟢 Vue 3 frontends
🗄️ PostgreSQL
💠 Redis
💠 Celery workers
💳 Stripe
🐳 Docker deploy

Open source MIT

One price: free.

$ 0 / forever
  • Use commercially
  • Modify & resell
  • No attribution required
  • Production-ready stack
  • Docker deployment
  • Community support
Get Started Free

Build and sell without limits.

Need clarity?

Frequently asked questions.

No. Workspace scoping is automatic with ReadyKit helpers.

Yes. MIT license gives you total freedom to launch and sell.

Smooth. They never see workspaces, but they still get isolated data.

Nope. Billing hooks are optional, remove them or bring your own.