How to contribute¶
Welcome! We are glad to have you visit our contributing guide!
If you find any bugs or have suggestions for improvements, please open an issue and optionally a pull request (PR). In the case of a PR, we would appreciate it if you preface it with an issue outlining your goal and means of achieving it.
git¶
We are using git submodules to import the KPOps examples repository. You need to fetch the repository locally on your machine. To do so use this command:
This will fetch the resources under the examples
folder.
Style¶
We advise that you stick to our pre-commit
hooks for code linting, formatting, and auto-generation of documentation. After you install them using poetry run pre-commit install
they're triggered automatically during git commit
. Additionally, you can manually invoke them with poetry run pre-commit run -a
. In order for dprint
to work, you have to manually install it locally. It will work in the CI, so it is also possible to manually carry out formatting changes flagged by dprint
in the CI and skip installing it locally.
Python¶
To ensure a consistent Python code style, we use Ruff for both linting and formatting. The official docs contain a guide on editor integration.
Our configuration can be found in KPOps' top-level pyproject.toml
.
Markdown¶
To ensure a consistent markdown style, we use dprint's Markdown code formatter. Our configuration can be found here.
CSS¶
To ensure a consistent CSS style, we use the malva dprint's plugin. Our configuration can be found here.
TOML¶
To ensure a consistent TOML style, we use dprint's TOML code formatter. Our configuration can be found here.