This GitHub repo follows the GitHub Flow git workflow. In essence, you contribute by making changes in your fork and then generating a pull request of those changes to be merged with the upstream.
You can read more about forking a GitHub repo here. Once you've forked this repo, you're now ready to clone the repo in your computer and start hacking and tinkering with its code.
Clone the GitHub repo
git clone https://github.com/my-github-username/get-me-a-date
Change current directory
cd get-me-a-date
Install NPM dependencies
npm install
It's generally a good idea to pull upstream changes and merge them with your fork regularly. Greenkeeper app is installed in this GitHub project, it will automatically update dependencies and merge them with upstream if possible.
Add remote upstream
git remote add upstream https://github.com/hfreire/get-me-a-date
Fetch from remote upstream master branch
git fetch upstream master
Merge upstream with your local master branch
git merge upstream/master
Install, update and prune removed NPM dependencies
npm install && npm prune
The list of outstanding feature requests and bugs can be found in the GitHub issue tracker of this repo. Please, feel free to propose features or report bugs that are not there.
With the exception rules from eslint-config-hfreire, this repo follows the JavaScript Standard Style rules.
Run the NPM script that will verify the code for style guide violations
npm run lint
You are encouraged to write automated test cases of your changes. This repo uses Mocha test framework with testdouble.js for faking, mocking and stubbing and Chai for assertion.
Run the NPM script that will verify failing test cases and report automated test coverage
npm run coverage
This repo follows the AngularJS git commit guidelines.
Run the NPM script that will commit changes through an interactive menu
npm run commit
You can read more about creating a GitHub pull request from a fork here.
Every pull request is welcomed, but it's important, as well, to have maintainable code and avoid regression bugs while adding features or fixing other bugs.
Once you generate a pull request, GitHub and third-party apps will verify if the changes are suitable to be merged with upstream. GitHub Actions CI workflow will verify your changes for style guide violations and failing test cases, while, Coveralls will verify the coverage of the automated test cases against the code.
You are encouraged to verify your changes by testing the code locally.
Run the NPM script that will verify the code for style guide violations, failing test cases and report automated test coverage
npm test