First off, thanks for even considering to contribute to this project!
The goal of this document is to hopefully fill in any gaps in knowledge for how you can help.
- Introduction
- Table of Contents
- Getting started
- Testing
- How to submit changes
- How to report a bug
- How to request an enhancement
- Style Guide
- Code of Conduct
- Where can I ask for help?
First thing you'll need to do is clone the project.
git clone [email protected]:prodigyeducation/python-graphql-client.git
After that you'll need to install the required python dependencies as well as development dependencies for linting the project.
pip install -e ."[dev]"
Finally, you should make sure pre-commit
has setup the git hooks on your machine by running the following command. This will run the automated checks every time you commit.
pre-commit install
Once the above setup is complete, you can run the tests with the following command.
make tests
- Create a fork of the repository. Checkout this github article for more information.
- Make changes in your fork of the project.
- Open a pull request to merge the changes in your fork back into the main repository. Follow the pull request template with details about the changes you're adding.
- Do a scan of the issues on the github repository to see if someone else has already opened an issue similar to yours.
- Create an issue on github using the
Bug report
template. - Fill out the issue template with relevant details.
- Do a scan of the issues on the github repository to see if someone else has already opened an issue similar to yours.
- Create an issue on github using the
Feature request
template. - Fill out the issue template with relevant details.
This project uses some automated linter and style checks to make sure the code quality stays at an acceptable level. All the checks used in this project should run when you commit (thanks to pre-commit and git hooks) and remotely when creating the pull request (thanks to github actions).
Take a peek at the Code of Conduct document for more information.
This project is pretty new, so for now feel free to add an issue into the project. Otherwise you can always email us at [email protected] for questions. Maybe one day we'll create a slack group for this project.