diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..4bfddee --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,36 @@ +# Contribution guidelines + + +## Code style + +We defined to use the following formats: +- Whitespace Formatting by [Black](https://github.com/psf/black) +- Docstrings Style see the examples provided by [sphinx napoleon](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html) Types in the docstrings are optional but should be consistent per module. +- Import Order by [isort](https://pycqa.github.io/isort/) +- Strict Typing of function headers see the examples provided by the [mypy](https://mypy.readthedocs.io/en/stable/cheat_sheet_py3.html) documentation. + +## Language + +We decided to use english on everything close to code but will write longer texts that are not close to the code in german. + +## Pre-Commit installation + +- clone the project +- install the following python package: + - `pre-commit` + +- execute the command `pre-commit install` to insert the git githook into your local repository. + - for more information read [Python Pre-Commit](https://pre-commit.com/) + - the following code format rules are so enforced: + - Whitespace formatierung: + - Python-[Black](https://github.com/psf/black) + - leading whitespace in all files + - Auto format: yaml, toml, ini + - Import norm by: + - [isort](https://pycqa.github.io/isort/) + - absolut module path + - Validierung: + - yaml, toml, json, xml + - Secret detection + - python normen ([pep8](https://peps.python.org/pep-0008/)) with [flake8](https://flake8.pycqa.org/en/latest/) + - type checking with ([mypy](https://github.com/python/mypy)) diff --git a/README.md b/README.md index b5f3276..2c404de 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,5 @@ # aki_prj23_transparenzregister -## Aufsetzen des Project zur Entwicklung +## Contributions -- clone des Projects -- installieren der folgenden Python Packete: - - `pre-commit` - -- führe das kommando `pre-commit install` aus um die pre-commit hooks für das repository zu aktiviere. - - für weiterführende Informationen [Python Pre-Commit](https://pre-commit.com/) - - Folgende Formats-konventionen wurden so implementiert - - Whitespace formatierung: - - Python: Black - - leading whitespace - - Auto framat yaml, toml, ini - - Import nomierung - - isort - - absolutify - - Validierung - - yaml, toml, json, xml - - Secret detection - - python normen - - type checking - - pep8 (flake8) - - file schemas +See the [CONTRIBUTING.md](CONTRIBUTING.md) about how code should be formatted and what kind of rules we set ourselves.