Just trying it out?
One project, on your machine, with nothing installed but Docker:
npx @motherbase/cli init my-backend
cd my-backend
npx @motherbase/cli startinit writes a docker-compose.yml and a .env with secrets generated for this
install, then prints the Studio URL and the first operator's credentials. start
brings the stack up. The first run builds the images from the repository, so give
it a few minutes; every run after that is cached.
That gets you a single project. The rest of this page installs the multi-project Platform Console, which is what Motherbase is actually for.
init never overwrites an existing .env without --force: that file holds the
only copy of the key your existing data was encrypted with.
Full install
Two steps:
- Install the Platform Console.
- Create a first project from the Console.
The setup script does not create a project stack automatically. It starts the Console and the routing layer; project auth, storage, SMTP, social providers, and Studio settings are configured after you create a project.
1. Clone the repository
git clone https://github.com/JulienGuinot/Boilerplate-backend.git
cd Boilerplate-backend2. Install the Platform Console
chmod +x setup.sh
./setup.shThe script asks for local or VPS mode, writes environment files, creates secrets, starts Traefik and the Platform Console, and prints Console access details.
Credentials printed by setup.sh are Platform Console credentials. Project API users are managed per project after the project exists.
Local mode
Pick L. The Console is available at:
http://localhost:5500/consoleProjects you create locally are reachable at:
http://<name>.localhostVPS mode
Pick V, or run:
DOMAIN=example.com ACME_EMAIL=you@example.com ./setup.sh --yes --prodConfigure one wildcard DNS record before creating projects:
Type: A
Name: *
Value: <VPS_IP>The Console is reachable at https://console.example.com, and future projects route as https://<name>.example.com.
3. Create your first project
Open the Platform Console and choose New project. The wizard asks mainly for:
| Field | Example |
|---|---|
name | todo |
domain | todo.localhost or todo.example.com |
storageDomain | todo-storage.localhost or todo-storage.example.com |
corsOrigins | http://localhost:3000 |
After the project starts, open its Project Studio from the Console. Configure project-specific auth providers, SMTP, storage, RLS policies, and SDK connection values there.
4. Connect your app
Pick your stack in Framework Quickstarts: Next.js, React, Vue, Nuxt, SvelteKit, Expo/React Native, or plain Node. For a Next.js or React app with authentication screens already wired, use create-motherbase-app.
Non-interactive install
# Local with defaults
./setup.sh --yes
# VPS with defaults
DOMAIN=example.com ACME_EMAIL=you@example.com ./setup.sh --yes --prod