Thank you for your interest in contributing to out project. The following are guidelines on how to best contribute to development of the HackIllinois API. Any contibution, wheather it be a bug report, feature request, bug fix, feature addition, or additional documentation, is greatly appreciated.
Bugs include problems in master
and staging
branches. Other branches are considered a work in progress and you can leave a comment on the relevant PR for that branch if there is one open. Please search the open GitHub issues to make sure your bug has not already been reported.
- A clear and descriptive title
- The exact steps to reproduce the issue
- Example code or files to reproduce the issue
- A description of the issue and how it differs from the expected behavior
Feature suggestions include everything from minor improvements to adding completely new functionality to the API. Please search the open GitHub issues to make sure your suggestions has not already been made.
- A clear and descriptive title
- An detailed description of the feature
- A description of the API's current behavior and how this feature would change it
- An explanation of why this feature would be useful
Take a look at the GitHub issues and leave a comment on one that you would like to work on. We have tagged some issues as beginner
that are a good introduction to working on the API. Once you have made the appropiate changes open a pull request.
- The base branch set to
staging
- A reference to the issue that this pull request addresses
- A 1 to 3 sentence general summary of the changes made
- Specific changes that were made in checklist format
- Relevent changes to documentation due to code changes
The following styleguides maintain a consistency across the codebase. Certain aspects are enforced by the continuous build system.
- Structurely code should pass
go fmt
- Methods should named in
CamelCase
- Exported package variables should be named in
ALL_CAPS
- Local variables should be named in
snake_case
- Feature additions should be prefixed with
feature/
- Bug fixs should be prefixed with
fix/
- Refactors should be prefixed with
refactor/
- Other changes need not be prefixed
- Each commit should be a complete logical chunk of code
- Squash and rebase commits if needed
- Use past tense in commit messages
- Keep messages clear and concise
- Do not end messages with a period
Much of this document was adapted from the now depreciated HackIllinois API.