Appearance
Getting Started
Coequal ships as a single static binary with the frontend embedded. No runtime dependencies are required beyond a PostgreSQL database.
Requirements
- PostgreSQL 17+
- A Kinde tenant for authentication
- API access to a supported LLM provider for grading (currently Anthropic)
How it works
The Go server embeds the compiled React frontend via go:embed and serves everything from a single binary. Database migrations run automatically on startup — there is no separate migration step.
The server listens on port 8080 by default (configurable via PORT). All configuration is done through environment variables.
Quick start
- Download the latest release for your platform from the releases page
- Create a
.envfile (see Configuration) - Run the binary:
bash
./coequalThe application will:
- Run database migrations automatically
- Start the HTTP server
- Start the grading and calibration workers (when
WORKER_TYPE=db) - Serve the frontend on all routes not matched by the API
Monitoring
Prometheus metrics are exposed at /metrics by default. Disable with PROMETHEUS_ENABLED=false.