Skip to content

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

  1. Download the latest release for your platform from the releases page
  2. Create a .env file (see Configuration)
  3. Run the binary:
bash
./coequal

The 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.