Thanks for showing an interest in contributing to workflow!
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub by Kent C. Dodds.
By making a contribution to this project you agree to abide by the Code of Conduct.
This project uses the workspaces feature of the yarn
package manager.
- Fork and clone the repo
yarn
- set up dependencies and link modulesyarn build
- builds modules into dist foldersgit checkout -b <branch>
Create a branch for your PR
Most of the packages have an example under the flows
folder which can be
executed with yarn example
inside the package folder. Some of these example
only run on specific platforms.
yarn eslint
- ESLint. Please fix any errors/warnings :)yarn format
- Prettier js to autoformat all code.yarn test unit
- Runs the unit testsyarn test integration
- Runs platform dependent integration tests
There are four ci jobs for the workflow project. These are the unit test suite which is executed on Circle CI and the platform dependent integration tests executed on Circle ci (linux-i3), travis ci (osx) and appveyor (windows).
Each of the integration tests runs a given flow and takes a screenshot of the result. This screenshot is compared with commited version for an exact match. When the tests fails the ci jobs will store the results as artifacts. As these images are hard to generate locally for windows and osx, the travis and appveyor jobs are set up to push a branch with the updated images, for the case where the changes are expected. The linux versions can be reproduced locally with the docker image.
The angular commit guide line is used to govern commit messages.
Please checkout the the open issues
Also, please watch the repo and respond to questions/bug reports/feature requests! Thanks!
This guide is adapted from the Downshift contributors guide.