.PHONY: build up down logs shell lock build: docker compose build up: docker compose up -d down: docker compose down logs: docker compose logs -f api shell: docker compose exec api bash # Generate a pinned requirements.txt from pyproject.toml (requires uv installed locally) lock: cd api && uv pip compile pyproject.toml -o requirements.txt