Explore the starter
Install it, customize the product identity, verify local dependencies, seed a demo account, and open every shipped application.
Follow the quick startMIT licensed · Production-minded
Go from guided local setup to a deployable web app, admin console, and Content Studio—with replay-safe billing, private storage, durable work, observability, and restore-tested operations.
Evaluating the stack first? See when Sushi SaaS is a good fit.
New adopters need different levels of detail. Start the complete stack, trace one paid workflow, or inspect the production controls before choosing what to keep.
Install it, customize the product identity, verify local dependencies, seed a demo account, and open every shipped application.
Follow the quick startFollow the five-credit image task through authentication, entitlements, ledger replay, the durable worker, private output, and compensation.
Trace the reference workflowBuild hardened containers, inspect migrations and data integrity, run restore drills, and execute the launch-readiness audit.
Open the launch pathThe starter focuses on the parts that become expensive after launch: ownership, retries, reconciliation, operational access, and explicit boundaries.
Verified email flows, OAuth, password recovery, MFA, Turnstile, Redis rate limits, and authentication event history.
Stripe Prices drive checkout; lifecycle webhooks update organization subscriptions and capability checks.
An append-only, traceable ledger connects purchases, grants, task spending, reversals, and balances.
Personal and shared workspaces, invitations, roles, last-owner protection, and pooled resources.
Private S3-compatible objects, signed access, generated outputs, lifecycle state, and a durable retryable database queue.
A separately deployed admin application with MFA, read/write roles, job recovery, audit events, and billing visibility.
An independently deployed Payload studio, signed marketing gateway, consent records, account exports, and delayed erasure.
OpenTelemetry, structured logs, migration integrity, backups, restore drills, retention, containers, and launch checks.
Runnable reference workflow
The local image provider is deliberately simple. The value is the production-shaped chain around it: one request key, one five-credit spend, durable execution, private output, and a refund that can recover after a crash.
Read the complete implementation guideResolve the member, organization, capability, quota, and same-origin boundary.
Persist a fingerprinted task and a deterministic five-credit ledger spend.
Deduplicate a durable job that survives the original HTTP request.
Call the provider with a stable idempotency identity and bounded retries.
Write and verify a private Garage/S3 object, then return a short-lived signed URL.
On terminal failure, restore the spend exactly once before the task becomes failed.
Routes translate HTTP. Services own invariants. Models own queries. The database owns constraints. Tests stop those boundaries from quietly dissolving.
Authenticate, validate, and translate HTTP into a business operation.
Coordinate invariants, idempotency, authorization, and side effects.
Provide typed, tenant-aware persistence behind one query boundary.
Enforce uniqueness, ownership, references, and durable state transitions.