Skip to content

Developing ARCTIC-3D

Installation

We use uv to manage the dependencies and the virtual environment, so it makes things easier if you need to install it first; check the official documentation for more details.

Clone the repository and install the dependencies:

git clone https://github.com/haddocking/arctic3d.git && cd arctic3d
uv sync

OR if you prefer pip

git clone https://github.com/haddocking/arctic3d.git && cd arctic3d
pip install .
pip install pytest pytest-cov pytest-mock coverage hypothesis mypy ruff types-requests

Testing

uv run pytest -m "not (sanity or integration)"

The sanity (API checks) and integration tests need an internet connection: run them with uv run pytest -m sanity and uv run pytest -m integration.

Linting

The code is linted and formatted with ruff, configured in pyproject.toml (lines of at most 79 characters). The CI runs both checks:

uv run ruff check        # add --fix to fix what can be fixed automatically
uv run ruff format       # or ruff format --check to only check