Skip to content

πŸš€ Getting Started

SuperStack uses Docker, so make sure Docker is installed before you begin.

1. Get SuperStack

Option 1: Use the Template (Easiest)

Click Use this template and create a new repository (e.g. myapp-backend) on GitHub.

Clone it to your machine:

git clone https://github.com/yourname/myapp-backend.git
cd myapp-backend

Option 2: Clone and Track Upstream (Advanced)

If you want to keep SuperStack’s Git history and pull upstream changes later, clone SuperStack:

git clone https://github.com/explodinglabs/superstack.git myapp-backend
cd myapp-backend

Create your own repo, then:

git remote rename origin upstream
git remote add origin https://github.com/yourname/myapp-backend.git
git push -u origin main

You can now pull upstream changes with:

git pull upstream main

2. Configure Environment Variables

Copy the example environment file:

cp example.env .env

This .env file is used to configure:

  • Secrets – Passwords, keys, etc.
  • Ports – Adjust the exposed ports (specifically, Caddy's) depending on environment or application (you may bring up multiple).

⚠️ The .env file is for development only. Never store real secrets in version control or production. Use CI/CD environment variables or a secrets manager instead.

3. Start the Stack

docker compose up -d

That's it – your backend is live.


🧩 What Just Happened?

SuperStack automatically:

  1. Starts a fresh Postgres database
  2. Applies initial migrations
  3. Launches PostgREST
  4. Serves everything through Caddy

πŸ’‘ Only Caddy exposes a port – all services are routed through it.

βž• What's Next?

πŸ‘‰ Create your database schema with migrations
πŸ‘‰ Deploy to a remote environment