# Contributing
Thank you for your interest in this project. Your contributions are highly welcome. 

Please read about this [project](./README.md) and its [LICENCE](./LICENCE.md) terms before making a contribution.

## Type of Contribution
  - [Report a bug or an issue](#report-a-bug-or-an-issue)
  - [Suggest a new feature or improvement](#suggest-a-new-feature-or-improvement)
  - [Contribute code](#contribute-code)

## Report a bug or an issue
Reporting bugs is one of the best ways to contribute. Before creating a bug report, please check that an issue reporting the same problem does not already exist. If there is such an issue, you may add your information as a comment.

To report a new bug please open an issue that summarizes the bug and set the label to "bug".

If you want to provide a fix along with your bug report, please send us a pull request as described in section [Contribute code](#contribute-code).

## Suggest a new feature or improvement
To suggest a new feature please open an issue. Summarize the desired functionality, its use case and set the issue label to "feature".

## Contribute code
Check the list of open issues. Either assign an existing issue to yourself or create a new one that you would like work on.
It is always best to discuss your plans beforehand, to ensure that your contribution is in line with our goals.

- Fork the repository on GitHub.
- Create a topic branch from where you want to base your work (for example, main)
- Open a new pull request and describe your contribution
- Commits your changes
- Make sure you sign-off on your commits: git commit -s -m "adding X to change Y"
- Write good commit messages with details about the changes
- Push your changes to a topic branch in your fork of the repository
- As you push your changes, update the pull request with new infomation and tasks as you complete them
- Project maintainers might comment on your work as you progress
- When you are done ping the maintainers for a review
- Your pull request must be approved by atleast two maintainers

Thank you for your contributions!

### Conventions
State any relevant conventions/rules a contributor needs to follow in this open source project, e.g. conventions for:
- Writing code
- Commit messages
- Branching
- Creating an issue on GitHub
- Writing documentation
- Testing
- etc.
