TODO: Fill in project description
- Python 3.13 - managed via
uv - uv — Python package manager
Install uv if not already installed:
brew install uv
# or
pip install uvuv init --python 3.13
uv python pin 3.13
uv add -r requirements.txtDebug mode (Flask dev server):
uv run app.pyProduction mode (Uvicorn ASGI server):
uv run uvicorn 'app:create_asgi_app' --factory --port 3000The app runs on http://localhost:3000.
Build and run using Docker:
docker build -t govuk-ai-graph-tools-app .
docker run -p 3000:3000 -t govuk-ai-graph-tools-appYou can run the full suite of checks using the Makefile:
# Run all checks
make lint && make format && make typecheck
# Run individual checks
make lint
make format
make typecheckThe project is configured with pre-commit to automatically run these checks before every git commit.
To install the hooks in your local repository:
make install-hooksOnce installed, your code will be automatically linted and type-checked whenever you commit. If you need to skip the hooks (e.g., for an urgent WIP commit), you can use git commit --no-verify.
uv run pytest