Motherbase is an open source self-hosted backend platform for running many isolated projects from one VPS and one domain.
Think of it as the backend you'd build yourself, with a Supabase-style Project Studio and a multi-project Platform Console.
Platform Console = control plane for creating, starting, stopping, rebuilding, and inspecting projects. Project Studio = admin UI for one project: tables, SQL, auth, policies, logs, storage, realtime, edge functions, triggers, cron jobs, settings, and Connect.
What's included
- Auth — Better Auth: email/password, social login, magic links, email OTP, passkeys, two-factor, organizations, per-org SSO, API keys, JWT/JWKS, live-reloaded config, server-side roles, rate limiting
- Database — PostgreSQL, SQL editor first, Table editor, indexes, extensions, functions, and triggers
- RLS — Native PostgreSQL row-level security with Supabase-style
auth.uid(),auth.jwt(),anon, andauthenticated - REST API — Automatic table API under
/rest/v1/:model, enforced by PostgreSQL RLS - Storage — Local or S3-compatible storage such as MinIO, AWS S3, Cloudflare R2
- Realtime — Socket.IO with JWT authentication, Project Studio monitoring, and RLS-aware table broadcasts
- Edge Functions — Server-side TypeScript/JS in a private Deno runtime, one process per function, with a hard memory cap, a timeout that kills the process, and an SSRF-guarded
fetch; stored in the database, invoked over HTTP. A Supabase function runs verbatim - Postgres Triggers — Real
CREATE TRIGGERworkflows for database-side automation - Cron Jobs —
pg_cronscheduling plus read-only status for code-defined app jobs - Project Studio — Supabase-style admin UI for one project
- Client SDK —
@motherbase/clientfor Next.js, Expo, React Native, browser/server TypeScript - Platform Console — Provision and operate multiple project stacks with Docker Compose and Traefik
- Operator CLI -
@motherbase/clifor Console login/link workflows, projects, database, RLS, users, storage, edge functions, cron, backups, Supabase imports, diagnostics, and local stack operations
When to use Motherbase
Supabase is great for the hosted experience. Motherbase is for the moment where your VPS has room for more than one project and you want one control plane for isolated backends.
Migration path
Motherbase can import the portable parts of a Supabase project: public schema, table data, RLS policies, and email/password users. See Migrate from Supabase.
Requirements
- Node.js >= 22.12.0 for backend development and build scripts
- Node.js >= 18 for
@motherbase/cli - Docker and Docker Compose. Postgres is not installed separately: every project
runs the bundled
postgres:16image extended withpg_cron,pgvectorand PostGIS.
Explore the docs
| Section | Start at |
|---|---|
| Get running | Quickstart, then Deploy |
| Build on it | Database, Auth, SDK reference |
| How it works | Architecture overview |
| Operate it | Platform Console and Self-hosting |
| Admin UI | Project Studio |
| Automate it | CLI and the Console API |
| Internals per package | Workspace overview |
| Contribute | Repo & toolchain |
| Full walkthrough | Todo app example |