-
Notifications
You must be signed in to change notification settings - Fork 11
Contributing
We definitely appreciate any help with code that you can provide. Before making changes to the codebase, please make sure you read through all of the documentation, and take time to look around in the repository to figure out how things work. Simply follow the setup guide to get your development environment configured (it's easier than it sounds!).
A few basic guidelines to follow when contributing code:
-
All code must be tested as thoroughly as possible. Look inside the
test
directory and read up on the Mocha testing framework to get started with tests. It is crucial that every test passes before your code will be merged into the main repository. If you add routes, or any other feature for that matter, you must write tests for that functionality. - Please keep your style consistent with that of the rest of the repository. This applies to code style, such as indentation, curly brace placement, and variable naming, as well as version control style, such as commit messages, pull request descriptions, and more. Being stylistically consistent is extremely important for the maintainability of the code base and the repository.
- Please be patient after submitting pull requests. Managing a large number of pull requests and issues can be very overwhelming, especially for such a small team. Please be patient and courteous.
- Be willing to take constructive criticism. We might change your code around a lot before it gets merged. Don't take this as an insult. Most of the time, it just means we had an idea of how to refactor your code to make it more efficient or more maintainable.
- Ask questions. Don't be afraid to ask questions...it's expected. Read on to find out how.
How to actually contribute code:
- Fork the repository.
- Clone your forked version to your machine.
- Setup your environment.
- Make your changes, commit in relatively small chunks.
- Push your commits.
- Come back to this repository and make a pull request.
We are willing to take constructive criticism. If you have new ideas, or things you think we could do better, don't hesitate to let us know. Again, please keep in mind that a very small team is working on this project, and it's already a full time job as it is. Don't feel bad if your idea isn't used; it doesn't mean it was necessarily a bad idea, it's just that there are only 24 hours in a day :) Also, and this is important, please do not be condescending when giving your opinions. Nobody likes that guy.
Don't be afraid to discuss anything that's on your mind. The KHE Slack channel is probably the best way to talk about things regarding the codebase, the repository, or the project in general. Just highlight @paul or @robin to get our attention.