Skip to content

How to Contribute

Code Contribution

Your development branch

First, fork the eunomia repository and then clone your forked repository locally:

# HTTPS
git clone https://github.com/<YOUR_GITHUB_USERNAME>/eunomia.git

# SSH
git clone git@github.com:<YOUR_GITHUB_USERNAME>/eunomia.git

Once in the cloned repository directory, make a branch with your username and description of the pull request:

git checkout -B <YOUR_GITHUB_USERNAME>/<PR_DESCRIPTION>

Python environment

Install the required dependecies with poetry including the development dependencies:

poetry install --with dev

Testing and formatting

Before pushing your changes, ensure the tests pass and the code style aligns:

poetry run pytest
poetry run black .
poetry run isort --profile black .

Note: a GitHub workflow will check the tests and formatting and reject the PR if it doesn't pass, so please make sure it passes locally.

Improving the Documentation

Install the required dependecies with poetry including the documentation dependencies:

poetry install --with docs

To build the documentation and serve it locally, run the following command in the repository's root folder; the documentation will update every time you make a change:

mkdocs serve

The documentation is built with Material for MkDocs, refer to their documentation for more information on how to use it.

Open a Pull Request

We actively welcome your pull requests; this is the workflow you should follow:

Step Description Jump to
1 Create your new branch from main in your forked repo Branch Setup
2 Add tests, if needed, and ensure all tests pass Testing
3 Update documentation for API changes Documentation
4 Open a pull request GitHub PRs