A multi-game agent simulation platform where students and teams submit code agents that compete in game simulations.
All Python services use lightweight two-stage Alpine builds. Dependencies are compiled in a builder stage and only the virtual environment is copied into the final image, keeping containers at ~400MB (API) compared to ~1.6GB for the full Debian-based Python image.
Prerequisites: Docker
git clone https://github.com/SanjinDedic/agent_games.git
cd agent_games
docker compose up --buildThat's it. The .env file ships with safe local defaults — no configuration needed.
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API docs: http://localhost:8000/docs
The database initializes automatically on first startup.
docker compose -f docker-compose.yml -f docker-compose.test.yml run --rm test-runnerFor production, override the .env values with real credentials:
POSTGRES_PASSWORD=<real password>
SECRET_KEY=<real secret>
DATABASE_URL=postgresql+psycopg://postgres:<real password>@postgres:5432/agent_gamesRemove the command: line from the api service in docker-compose.yml to switch from dev uvicorn to gunicorn with 3 workers.
docker compose logs -f api # View logs
docker compose down # Stop all services
docker compose down -v # Stop and delete database data