Skip to content

Latest commit

 

History

History
75 lines (55 loc) · 3.29 KB

CONTRIBUTING.md

File metadata and controls

75 lines (55 loc) · 3.29 KB

Contribution guidelines

If you want to contribute, we ask you to follow these guidelines.

Reporting bugs

If you have encountered a bug in this project, please check if an issue already exists in the list of existing issues. If such an issue does not exist, you can create a new issue. When writing the bug report, try to add a clear example that shows how to reproduce said bug.

Adding new features

Before making making changes to the code, we advise you to first check the list of existing issues for this project to see if an issue for the suggested changes already exists. If such an issue does not exist, you can create a new issue. Creating an issue gives an opportunity for other developers to give tips even before you start coding.

Code style

To keep the code clean and readable, this project uses:

  • isort to order the imports
  • black to format the Python code and keep diffs for pull requests small
  • flake8 to clean up code (removing unused imports, etc.)
  • prettier to format the JS code and keep diffs for pull requests small Whenever a branch is pushed or a pull request is made, the code will be checked in CI by the tools mentioned above, so make sure to install these tools and run them locally before pushing branches/making pull requests.

This project aims to meet the criteria of the Standard for Public Code. Please make sure that your pull requests are compliant, that will make the reviews quicker.

Forking the repository

In order to implement changes to this project when you do not have rights for this repository, you must first fork the repository. Once the repository is forked, you can clone it to your local machine.

Making the changes

On your local machine, create a new branch, and name it like:

  • feature/some-new-feature, if the changes implement a new feature
  • issue/some-issue, if the changes fix an issue

Once you have made changes or additions to the code, you can commit them (try to keep the commit message descriptive but short). If an issue already exists in the list of existing issues for the changes you made, be sure to format your commit message like :gitmoji: Fixes #<issue_id> -- description of changes made, where <issue_id> corresponds to the number of the issue on GitHub. To demonstrate that the changes implement the new feature/fix the issue, make sure to also add tests to the existing Django testsuite.

Making a pull request

If all changes have been committed, you can push the branch to your fork of the repository and create a pull request to the develop branch of this project's repository. Your pull request will be reviewed, if applicable, feedback will be given and if everything is approved, it will be merged.

Reviews on releases

All pull requests will be reviewed by a project member before they are merged to a release branch.