-
Notifications
You must be signed in to change notification settings - Fork 66
Contributing
There are many ways that you can contribute to this project, many of which do not require you to be a developer. You can help by:
- Testing out features and reporting any bugs that you find in the issue tracker
- Performing validation tests on forms, checking error messages
- Providing advice and experience through discussions of issues
- Fixing spelling mistakes and grammatical errors
- Providing and correct translations
- Validating HTML output and making corrections
- Making user interface improvements, including improving error messages and labels
- Replacing deprecated or outdated pieces of code
- Helping to write documentation and managing issues
- Creating useful block template variations
- ...and of course adding new features, both big and small through pull requests
Even what might seem the most trivial improvements are valued - everything adds up!
If you wish to contribute a code fix or feature, you will need to:
- Fork the repository
- Create a new feature/fix branch
- Work on that branch, test your new code, commit it
- Submit a 'Pull Request', detailing what your change is
After this has been done your code my be critiqued for correctness. You can make further changes by committed further changes to your branch. Once ready, your contribution will be merged into the 'master' branch and considered part of the current codebase. After this has occurred you can safely delete your branch.
It is suggested that your pull requests feature one fix or feature at a time, rather than a long list of unrelated changes. Smaller pull requests are easier to review, but helps to also avoid issues where one aspect is rejected whilst the rest of the pull request is ready to be merged.
Please write code to the PSR-2 Coding Style defined by the PHP-FIG - http://www.php-fig.org/psr/psr-2/
Use statements that include Community Store classes should be aliased with the word 'Store'. i.e. use \Concrete\Package\CommunityStore\Src\CommunityStore\Utilities\Price as StorePrice;
All classes and IDs that relate to functionality/processing should be prefixed with 'store-' and appear first in class lists. Such classes/IDs are therefore meant to always remain in markup to support javascript related functionality. For custom styling purposes, Bootstrap replated classes can be safely removed from elements without concern of breaking functionality.
When submitting code, remember to wrap all strings in a t() function, so that text can be translated.