Skip to content

Instantly share code, notes, and snippets.

@ironheart122
Created March 4, 2020 16:22
Show Gist options
  • Save ironheart122/4844eae88fcf754e6e5f27c20fd12ea6 to your computer and use it in GitHub Desktop.
Save ironheart122/4844eae88fcf754e6e5f27c20fd12ea6 to your computer and use it in GitHub Desktop.

Revisions

  1. ironheart122 created this gist Mar 4, 2020.
    78 changes: 78 additions & 0 deletions CONTRIBUTING.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,78 @@

    # Project Contributor Guide



    ## Style guide



    The codebase adheres to the following style guides and is enforced using ESLINT:



    - [Airbnb JavaScript](https://airbnb.io/javascript/)

    - [Airbnb React/JSX](https://airbnb.io/javascript/react/)

    - [Airbnb CSS](https://github.com/airbnb/css)



    If possible, please use ESLINT and Prettier plugins/extensions in your editor to get real-time feedback.



    Regarding CSS naming convention, BEM is optional since the project uses CSS modules.



    ## Development workflow



    The project uses a simplified [gitflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) workflow. Basically, development mainly takes place in dedicated feature branches which are merged back into the develop branch when finished.



    ## Branch naming convention



    Name your branches with prefixes and descriptions: `[type]/[change]`. Eg. `refactor/auth-flow`



    Acceptable types:



    - feature

    - bugfix

    - update

    - cleanup

    - refactor



    ## Checklist for pull requests



    Any pull request must meet the following base requirements:



    - List all changes you have made in the description field.

    - Ensure the linter does not report any issues.

    - Ensure there are correspoding tests for relevant changes.

    - Ensure all CI tests pass.

    - Rebase to synchronize your work with the remote develop branch (origin/develop) and ensure all conflicts are fixed before submitting the pull request. Use `git pull origin develop && git rebase develop`.