Prerequisites
Before setting up Proxima Console locally, make sure you have the following software installed.
Required Software
| Tool | Version | Purpose |
|---|---|---|
| Go | 1.26+ | Builds and runs the agent and backend |
| Node.js | 20.19+ | Builds and runs the frontend (React/TypeScript) |
| Docker | Latest | Runs PostgreSQL, NATS, Tempo, and other services as containers |
| Docker Compose | v2+ | Orchestrates the local development infrastructure |
| golangci-lint | Latest | Go linter, used by make lint and pre-commit hooks |
| golang-migrate CLI | Latest | Applies database migrations (make migrate-up) |
| PostgreSQL client (psql) | 16+ | Used by seed scripts to populate development data |
| bats | Latest | BATS runs the E2E suite; make test invokes it |
| python3 | 3.8+ | make test runs python3 -m unittest for the script tests |
| swag | Latest | make build regenerates the swagger spec via swag init |
make test and make build need more than the first sevenA machine provisioned with only Go/Node/Docker will fail both: make test shells out to bats and
python3, and make build runs swag init. Install all ten before your first full run.
Installation Guides
Go
Install Go 1.26 or later from go.dev/dl. Verify with:
go version
Node.js
Install Node.js 20 or later using nvm (recommended) or from nodejs.org:
nvm install 20
node --version
npm --version
Docker and Docker Compose
Install Docker Desktop (includes Compose v2) from docker.com. Verify with:
docker --version
docker compose version
golangci-lint
Install using the official script or a package manager:
# Binary install (recommended)
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin
# Verify
golangci-lint --version
golang-migrate CLI
Install from github.com/golang-migrate/migrate:
# macOS
brew install golang-migrate
# Linux (binary)
curl -L https://github.com/golang-migrate/migrate/releases/download/v4.17.0/migrate.linux-amd64.tar.gz | tar xvz
sudo mv migrate /usr/local/bin/
# Verify
migrate --version
PostgreSQL Client (psql)
The psql client is needed for seed scripts. Install it without the full server:
# macOS
brew install libpq && brew link --force libpq
# Ubuntu/Debian
sudo apt-get install postgresql-client
# Verify
psql --version
Verify Everything
Run the following to confirm all tools are available:
go version # Go 1.26+
node --version # v20+
docker --version # Docker 24+
docker compose version # v2+
golangci-lint --version
migrate --version
psql --version
Once all prerequisites are installed, proceed to the Quick Start guide.