Contributing#

Contributions are welcome! If you would like to contribute to ablate, please open an issue or a pull request on the GitHub repository.

Installation#

It is recommended to install ablate within a virtual environment for development. To create a new virtual environment, refer to the Python venv documentation.

To set up ablate for development, start by cloning the repository and then install the development dependencies using uv:

git clone git@github.com:ramppdev/ablate.git
cd ablate
uv sync --all-extras --all-groups

Conventions#

We use Ruff to enforce code style and formatting. Common spelling errors are automatically corrected by codespell. Type checking is performed using mypy.

Linting, formatting, and spelling checks are run with pre-commit. To install the pre-commit hooks, run the following command:

pre-commit install

To locally run the pre-commit hooks, use:

pre-commit run --all-files

Testing#

We use pytest for testing. To run the tests, use the following command:

pytest