Development
To set up a development environment using uv for dependency management:
# Clone the repository
git clone https://github.com/joefarrington/mdpax.git
cd mdpax
# Create a virtual environment
uv venv
source .venv/bin/activate
# Install development dependencies
uv sync # Using uv
# Install pre-commit hooks
pre-commit install
# Run a subset of tests (suitable for CPU)
uv run pytest tests -m "not slow"
# Run all tests (requires a GPU)
uv run pytest tests
Running the tests using the commands above will print a code coverage report in the terminal.
The development environment includes:
black and ruff for code formatting and linting
pytest for testing
pre-commit hooks to ensure code quality
sphinx for documentation building
See pyproject.toml for the full list of development dependencies.