So you're considering contributing to this project? Wonderful! First, WELCOME and THANK YOU! The more minds we have working on this, the faster we will approach our vision of what it should be.
If you haven't already, please take a moment to read our CODE_OF_CONDUCT.md file. It covers the philosophy behind how we must all treat this project and the people associated with it.
A great way to start contributing is to look through the issues on our GitHub page. As our core team members look through new issues, we label them according to what they are (bug, enhancement, etc) and also label the ones that are going to be especially hard to fix with "Help Wanted" and ones that should be easy with "Good First Issue". Github for easy filtering of issues based on those labels which allows you to easily locate issues appropriate for your skill level.
If you have a specific bug or feature you would like to see addressed, please search for that issue on GitHub first. If you can't find a significantly similar issue, please file a new issue on GitHub and let us know that you are interested in helping to address it. We try to look at every new issue in 24 hours or less, label them appropriately, and provide any questions we may have for you as well as any cursory information we can quickly provide that may help with the issue. Wait for our response before attempting to write code to fix the issue as we may already be working on it under another issue and we would hate for you to waste your valuable time on a task that is already underway.
In addition to reading and understanding all submitted code, we run everything through a variety of code quality checking tools. In the event that we have issues with the submitted code, we will work with you to ensure both you and we fully understand the issues and, if we feel the code is not ready for inclusion in the main branch, we will often work with you to bring it in line with our standards.
We strive to always keep our code as near to 100% test coverage as possible. Please try to keep that in mind when submitting code to our project. Where possible, please ensure your code is covered thoroughly by tests that cover both all expected results and expected failures.
- Leave a blank line between the subject and body
- Limit the subject line to 50 characters
- Capitalize the subject line
- Do not end the subject line with a period
- Use the imperative mood in the subject line
- Limit body lines to 72 characters
- Use the body to explain what and why..not how
Additionally, we use git-changelog so feel free to use it's notation in your commit messages if you feel your submission has information that should be in the changelog.
Please note that all code submitted to this project will be considered to be released under the same license as the project as a whole. Please see LICENSE for details about the license.