Welcome! Thank you for showing interest in contributing to this package 🥰🥳
The following information comprises of some guidelines & details important in ensuring you're first contribution is as smooth as possible. Following the guidelines also helps communicate that you respect the time of the maintainers and your intent to help develop this project.
In case you have enountered any bug while utilizing this package, please ensure:
- You are using the latest release.
After confirming the above, browse through our tickets and ensure the bug has not been reported already. If it hasn't been reported yet, open a ticket with the as much informations as possible like:
- What you expected to happen
- What actually happened
- Logs and other interesting information
- All steps to reproduce the issue
Feature and enhancement requests are always welcome! We ask you ensure the following details are provided while opening a ticket, in order to start a constructive discussion:
- Describe the feature/enhancement in detail.
- Explain why the feature/enhancement is needed.
- Describe how the feature/enhancement should work
- List any advantages & disadvantages of implementing the feature/enhancement
Pull requests are wholeheartedly welcome!❤️ If you are unsure about how to make your first pull request, here are some helpful resources:
In order to make it easier for us to facilitate the smooth merging of your pull request, please make sure the following standards are met within your pull request.
- Code & commits follow our styleguides.
- Setup your development environment as advised here.
- Implement / Update tests that need to be updated and ensure that they pass.
With the above points in mind feel free to comment on one of our beginner-friendly issues expressing your intent to work on it.
This project utilizes pipenv, one can setup the pipenv environment by running the following:
$ pipenv install --dev
$ pipenv shell
$ pre-commit install
If you aren't comfortable utilizing pipenv
but are comfortable in utilizing virtualenv
. You can run the following to setup the environment within a virtualenv
:
$ pip install pipenv
$ pipenv install --dev
$ pre-commit install
Git commits help communicate what has changed within the project. Making it easier to track down changes or implementation within the codebase. Before contributing please read the following article by Chris Beams on How to Write a Git Commit Message.
This project utilizes a variety of python code linters & formatters. Most of these checks are run before a commit is made as long as one has setup the project as defined in Setting up your development environment.
If you'd like to manually run the checks, run the following command.
$ tox