We love external contributions!
Here are some guidelines to streamline the process.
If you have a new idea:
- Please check open and closed issues and PRs for relevant discussions
- If none exist, raise the topic and discuss to make sure it's aligned with the overall vision and roadmap
- Fork the repo
- Create a branch in your fork (prefer - in naming rather than _)
- Implement your changes in your branch
- Make sure your branch contains changes limited to the scope of the task
- Dependency updates should be standalone PRs whenever possible
- Implement tests if applicable
- Do a round of manual QA
- Update
CHANGELOG.md
if applicable - Update documentation if applicable
- Push to your fork's branch, open a PR
Trivial fixes (typo, easy-to-fix compilation error, etc.) don't need to go through this process
When updating the documentation, test the generated mkdocs site locally.
Prerequisites
- Install
pip install mkdocs
pip install mkdocs-material
pip install mkdocs-material-extensions
pip install mkdocs-macros-plugin
pip install pillow cairosvg
brew install cairo freetype libffi libjpeg libpng zlib
- Upgrade
If you installed mkdocs earlier and receive some error, try upgrading first:
pip install [mkdocs-...] --upgrade
mkdocs serve
Check the console output for a localhost url, most probably something like:
INFO - [09:41:08] Serving on http://127.0.0.1:8000/bumble-tech/appyx/
Open the url in your browser. Changes are automatically deployed by mkdocs while the server is running.