Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 2.51 KB

contributions.md

File metadata and controls

66 lines (46 loc) · 2.51 KB

Contributing

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.

Project setup

This project uses the workspaces feature of the yarn package manager.

  1. Fork and clone the repo
  2. yarn - set up dependencies and link modules
  3. yarn build - builds modules into dist folders
  4. git 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.

Tests and static analysis

  • yarn eslint - ESLint. Please fix any errors/warnings :)
  • yarn format - Prettier js to autoformat all code.
  • yarn test unit - Runs the unit tests
  • yarn test integration - Runs platform dependent integration tests

Continuous integration

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.

Conventions

The angular commit guide line is used to govern commit messages.

Help needed

Please checkout the the open issues

Also, please watch the repo and respond to questions/bug reports/feature requests! Thanks!

Attribution

This guide is adapted from the Downshift contributors guide.