We are so glad you're thinking about contributing to the Keep-Current project! If you're unsure about something, please don't hesitate to ask us.
We want to ensure a welcoming environment for all the Keep-Current different repositories. Please follow the Code of Conduct.
We encourage you to read the License and the Readme.
You can find our Project board here on GitHub and we use Slack as our communication channel. If you're new, you can join using this link.
We welcome anyone who would like to join and contribute.
We meet regularly every month in Vienna through
to show our progress and discuss the next steps.
We follow the clean architecture style and structure the codebase accordingly.
Image credit to Uncle Bob
Most important rule:
Source code dependencies can only point inwards. Nothing in an inner circle can know anything at all about something in an outer circle. In particular, the name of something declared in an outer circle must not be mentioned by the code in the an inner circle. That includes, functions, classes. variables, or any other named software entity.
Currently we use an adapted version of Gitflow. We are currently not using the develop branch as the project structure does not require it. Everything else is the same.
Image credit to nvie.com
We have created templates for issues and pull requests to ensure a coherent workflow.
As a general rule, always make sure that:
- you are formatting your code according to the black formatter
- you are linting your code with pylint and our pylint settings
- all tests pass
We have several integration tools hooked up for reviewing pull requests. Make sure that those tests are also passing, and if not provide a detailled explanation why not and why it is not necessary to comply.