Developer local setup
Prerequisites
Section titled “Prerequisites”- Go 1.25+
- Node.js 22+
- pnpm 10+
- Docker (for PostgreSQL and Redis)
- GitHub App (for webhook testing — see the Getting started guide)
Quick start
Section titled “Quick start”Start the database and cache containers:
docker compose -f deploy/docker-compose.dev.yml up -dThen start all services at once:
./dev.shdev.sh runs turbo run dev dev:worker dev:retention:cron, which starts the API server, background worker, retention cron, and the dashboard dev server in parallel.
Environment variables: Copy
.env.exampleto.envand fill in the required values.
Running individual apps
Section titled “Running individual apps”If you prefer to run apps separately instead of using dev.sh:
# API server (port 8080)go run ./cmd/server
# Background workergo run ./cmd/worker
# Dashboard dev server (port 5173)cd apps/dashboard && pnpm devDatabase
Section titled “Database”Migrations run automatically when the API server starts. There is no separate migration command to run. The migration files live in apps/api/internal/store/migrations/.
Dashboard proxy
Section titled “Dashboard proxy”The dashboard dev server proxies /api and /auth requests to localhost:8080, so the API server must be running for the dashboard to function. No additional proxy configuration is needed.