Shuup Open Source Platform Contribution Guide
As an open source platform under active development, Shuup gladly welcomes all contributions and feedback. As soon as you learn Shuup basics, you can contribute in several ways:
- • Join our gitter group to help answer questions.
- • Report issues on our issue tracker.
- • Submit pull requests for new or corrected behavior.
- • Improve the developer documentation or merchant documentation.
- • Write unit tests.
- • Translate Shuup to another language
Finding an issue to resolve
First, you should navigate to issues where you can find all the issues within Shuup open source platform. You should look for “Help wanted” label. This label indicates that the issue is something we would really much appreciate if the community could resolve when our whole team is focusing on something else. If you cannot find an issue labeled with “Help wanted”, you can choose any issue you think you can resolve.
Reporting an issue
Before submitting an issue, please ensure you’re using the latest version of Shuup and search the issue tracker to see if the issue has already been reported.
If you’re certain you’ve found an issue, we encourage you to report it by clicking the “Provide feedback” trigger button to the right of the screen. Please provide detailed steps to recreate the bug. The more details provided, the better!
Submitting a Pull Request:
We love receiving pull requests from the community and will do our best to process them quickly. Before you start development, ensure a related issue doesn’t exist. If you plan on making a significant code/design change, please document it in our issue tracker. If you’d like to work on an issue on our backlog, please ping us on gitter.
Process:
- Fork the repo and create your branch from master.
- Create your patch and add appropriate test cases.
- Add a changelog entry
- Write down the issue number (if working on a ticket) in the commit and PR description
- Sign our Contributor License Agreement (CLA)
- Once your PR is submitted, our CI environment will ensure the code follows our guidelines and tests pass. Members of our core team will then review the changes and provide feedback, if required.
Coding Style:
As a project built on Django, Shuup open source platform adheres to the Django code styles found here:
https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/
Improving the Documentation:
Not sure if that typo is worth a pull request? Do it! We encourage any general improvements or new additions to our
documentation.
Our documentation is written in reStructuredText using the Sphinx documentation generator.
Writing Unit Tests:
Want to learn more about Shuup internals? Adding unit tests that increase our open source platform test coverage is a great way for new
contributors to get started with Shuup development.
Process:
- Fork the repo and create your branch from master.
- Run our current test suite with coverage py.test -vvv –nomigrations –cov shuup –cov-report html shuup_tests
- View the report to find areas currently lacking tests
- Add your test to shuup_tests/.
- Submit your PR.
Translating Shuup:
- Go to Transifex and click Help Translate “Shuup”