Installation

Python ≥ 3.10. This is a Warp-first library: warp-lang and numpy are the only required runtime dependencies. torch, scipy, matplotlib, and pytest live in the dev extra for tests, benchmarks, and oracle comparisons; gradio lives in the ui extra. The runtime path runs on the Warp cpu device (GPU-free, for tests/CI) and on cuda.

Add to an existing uv project

If you already have a uv-managed project (one with a pyproject.toml and a uv.lock), add track_gen as a dependency with uv add from inside that project. It records the dependency in your pyproject.toml, resolves it into uv.lock, and syncs the environment in one step.

# from a Git tag/branch (recommended for reproducibility — pin a ref)
uv add "git+https://github.com/AntoineRichard/TrackGen.git"
uv add "git+https://github.com/AntoineRichard/TrackGen.git@main"

# with an extra (e.g. the Gradio UI)
uv add "track_gen[ui] @ git+https://github.com/AntoineRichard/TrackGen.git"

# or from a local checkout, tracked as an editable path dependency
uv add --editable /path/to/TrackGen

uv add updates pyproject.toml and uv.lock for you. To materialise the environment from the lockfile later (e.g. on a fresh clone or in CI), run uv sync. warp-lang and numpy come in automatically as core dependencies; request the dev or ui extras only if you need them.

With venv + pip

python -m venv .venv
.venv/bin/pip install -e ".[dev]"

Both approaches create a .venv/; run anything in it with .venv/bin/python … (or source .venv/bin/activate, or uv run …).

Extras

Extra

Packages added

dev

pytest, matplotlib, scipy, torch

ui

gradio

CPU and CUDA

Core deps are numpy and warp-lang. The runtime path runs on the Warp cpu device (GPU-free, suitable for tests and CI) and on cuda (production). No CUDA installation is required to install or run the CPU path.