Choose Backend/API Stack

Add a backend when the product needs server-side coordination or trust. Do not add it because the app has forms.

Backend Is Required When

  • Users share data across accounts or devices.
  • You need auth, roles, invites, billing, or payments.
  • You integrate with third-party APIs that require secret custody.
  • You need queues, cron jobs, ingestion, webhooks, or durable background work.
  • You need an admin UI or audit trail.
  • You need server-side validation for business-critical workflows.

Backend Is Optional When

  • Data can stay local and exportable.
  • The app is single-user.
  • Static generation covers the content.
  • Sync can wait.
  • Manual import/export is acceptable for v1.

Small Starter Shapes

ShapeGood forStarter
Go single binary plus embedded UILocal services, dashboards, admin toolsGo API, SQLite, embedded Vite build, health route
PocketBase-style embedded backendCRUD/admin/auth-heavy solo appsSQLite, admin UI, custom routes
Serverless/Workers APISmall public APIs, webhook glue, protected static appsWorker routes, bindings, minimal state
Traditional web appAuth-heavy CRUD with conventional deploymentFramework, DB, migrations, jobs

First Gates

  1. Schema and migration path exists.
  2. Auth/authorization model is explicit.
  3. Secrets are not in client code.
  4. Health check and logs exist.
  5. Backup/export story is named.
  6. Local dev and production deployment commands are known.