Support and contributions from the open source community are essential for keeping these projects up to date and always improving! There are a few guidelines that we need contributors to follow to keep everything consistent.

šŸ”– Creating an Issue

Before you create a new Issue:

  • Check the Issues of the repo concerned on Github to ensure one doesn't already exist, node, swift, angular
  • Clearly describe the issue, including the steps to reproduce the issue, try to use a template on of our template defined in the repository
  • If it's a new feature, enhancement, or restructure, explain your reasoning on why you think it should be added, as well as a particular use case.

And whatever your participation, we thank you :) !

šŸ“ Making Changes

  • Fork the repository and create a topic branch from the master branch
  • Check for unnecessary whitespace/changes with git diff --check before committing.
  • Also check that your code is formatted properly, respect the linter of every repo :
    • EsLint
    • SwiftLint
    • ...
  • Keep git commit messages clear and appropriate, we use our own conventional-changelog, type(scope): subject :
    • type : build, ci, chore, docs, feat, fix, perf, refactor, revert, style, test
    • scope : related to scope/module concerned (helpers, config, core, users, tasks ...)
    • some examples :
      • refactor(helpers): subject :hammer:
      • fix(task): subject :bug:
      • chore(tests): subject :fire:
      • feat(tasks): subject :sparkles:
      • docs(wiki): subject :books:
      • ci(travis): subject :construction_worker:
  • Make Sure you have added any tests necessary to test your code and run all the tests. Don't rely on the existing tests to see if you've broken code elsewhere; test the changes you made too!
  • Update the documentation if necessary
  • If possible, please "squash" your commits to as few commits as possible/reasonable such as one commit for implementation, one for tests, and one for documentation before finally squashing to one commit when getting the LGTM from a collaborator.

And whatever your participation, we thank you a lot for participation :)!

šŸ‡šŸ» Submitting the Pull Request

  • Push your changes to your topic branch on your fork
  • Submit a pull request from your topic branch to the master branch on the repository.
  • Be sure to tag any issues on your pull request, for example, adding "Closes #xyz" to a commit message will auto close the issue once the pull request is merged in.
  • Small changes are usually accepted and merged within a week
  • Larger changes usually spark further discussion and possible changes prior to being merged in.

šŸš€ Generating a new Release

  • Don't forget to update the changelog! with standard-version
  • Review, and commit changes

Sharing of knowledge - #LetsGetTogether