Contributing Guidelines

👍🎉 First off, thanks for considering to contribute to this project! 🎉👍

These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.

Git hooks

We use git hooks through pre-commit to enforce and automatically check some “rules”. Please install it before to push any commit.

See the relevant configuration file: .pre-commit-config.yaml.

Code Style

Make sure your code roughly follows PEP-8 and keeps things consistent with the rest of the code:

  • docstrings: sphinx-style is used to write technical documentation. Please use type hints and annotations to make the code fully compatible with related mechanisms (Sphinx, IDE…).

  • formatting: black is used to automatically format the code without debate.

  • sorted imports: isort is used to sort imports

  • static analisis: flake8 is used to catch some dizziness and keep the source code healthy.