First off, thank you for considering contributing to this project. It's people like you that make it such a great tool.
This project adheres to a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
This is an open-source project, and we welcome contributions of all kinds: new features, bug fixes, documentation, examples, or enhancements to existing features. We are always thrilled to receive contributions from the community.
If you've never contributed to an open-source project before, here are a few steps to get you started:
Before submitting a bug report or feature request, check to make sure it hasn't already been submitted. You can search through existing issues and pull requests to see if someone has reported one similar to yours.
When you are creating a bug report, please include as much detail as possible.
- Fork the repository and create your branch from
main
. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- Issue that pull request!
For something that is bigger than a one or two-line fix:
- Create your own fork of the code.
- Do the changes in your fork.
- If you like the change and think the project could use it:
- Be sure you have followed the code style for the project.
- Note the Code of Conduct.
- Send a pull request.
If you find a security vulnerability, do NOT open an issue. Email [email protected] instead.
In order to help us understand and resolve your issue quickly, please include as much information as possible, including:
- A quick summary and/or background
- Steps to reproduce
- Be specific!
- Give a sample code if you can.
- What you expected would happen
- What actually happens
- Notes (possibly including why you think this might be happening or stuff you tried that didn't work)
People love thorough bug reports. I'm not even kidding.
If you find yourself wishing for a feature that doesn't exist in the project, you are probably not alone. There are bound to be others out there with similar needs. Open an issue on our issues list on GitHub, which describes the feature you would like to see, why you need it, and how it should work.
The core team looks at Pull Requests on a regular basis in a bi-weekly triage meeting. After feedback has been given, we expect responses within two weeks. After two weeks, we may close the pull request if it isn't showing any activity.
Discussions about the project take place in this repository's Issues and Pull Requests sections. Anybody is welcome to join these conversations.
Wherever possible, we use GitHub to discuss changes and keep the decision-making process open.
Thank you for contributing!