π 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:
- Starts a fresh Postgres database
- Applies initial migrations
- Launches PostgREST
- 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