Browse documentation

The supported deployment path is ./setup.sh. It installs the Platform Console and routing layer; projects are created afterwards from the Console.

Prerequisites

  • A VPS running Ubuntu 22.04+
  • A domain pointing at the VPS
  • One wildcard DNS record for project subdomains
  • Docker and Docker Compose

DNS

For example.com, create:

Type: A
Name: *
Value: <VPS_IP>

This covers:

console.example.com
todo.example.com
todo-storage.example.com
client-a.example.com

*.example.com does not cover example.com itself. External customer domains still need their own DNS records.

Install

git clone https://github.com/JulienGuinot/Boilerplate-backend.git
cd Boilerplate-backend
DOMAIN=example.com ACME_EMAIL=you@example.com ./setup.sh --yes --prod

The setup starts Traefik and the Platform Console, builds the images, generates secrets, and prints Console credentials.

Note

No default project stack is created. Open the Platform Console, then create projects with New project.

Create a project

From the Platform Console, create a project with:

FieldExample
Nametodo
Domaintodo.example.com
Storage domaintodo-storage.example.com
CORS originshttps://app.example.com

Then open the project Studio to configure auth providers, SMTP, storage, RLS policies, SQL, and SDK connection values.

Services

SurfaceURL
Platform Consolehttps://console.example.com
Project APIhttps://<project>.example.com
Project StudioOpen from the Platform Console
OpenAPI docshttps://<project>.example.com/api/docs

In production, direct access to a project /console can be restricted by Traefik or an IP allowlist. The normal operator path is through the Platform Console.

Health check

curl https://todo.example.com/api/health-check
# {"status":"ok"}

Updates

For normal platform updates, rerun the supported setup path from the repository:

git pull
./setup.sh --yes --prod

This rebuilds the shared images and recreates Traefik plus the Platform Console without deleting project volumes. See Updates for project updates, release-channel checks, migrations, and rollback.

Advanced maintenance

Files under deploy/ are internal helpers used by setup.sh. Use direct Docker Compose, deploy/console, or Prisma migration commands only for maintenance/debugging when you understand the project stack being targeted.

npm run prisma:deploy
npm run studio:build
docker compose -f deploy/docker-compose.prod.yml ps