2018-08-18 11:13:50 +00:00
# Contributing
2019-01-21 19:21:33 +00:00
We're always open to pull requests or code reviews. Everyone can become a permanent contributor. Just ping @lancedikson in the issues or on Twitter ❤️
## Branches
2019-01-21 19:28:11 +00:00
The project runs Git-flow, where the `master` branch is for development and `production` is for production.
2018-08-18 11:13:50 +00:00
2019-01-21 19:28:11 +00:00
In a nutshell, if you are proposing a new feature that adds totally new functionality to `bowser` , it's better to branch from `master` and make a PR pointing back to `master` as well.
2019-01-21 19:21:33 +00:00
2019-01-21 19:28:11 +00:00
If it's a small hot-fix, an improvement to the docs, or added support for a new browser/OS/platform/etc, then it's better to branch from `production` and make a PR pointing back to `production` .
2019-01-21 19:21:33 +00:00
2019-01-21 19:28:11 +00:00
Following these simple rules will really help maintain the repo! Thanks ❤️
2019-01-21 19:21:33 +00:00
## Adding Tests
2019-01-21 19:28:11 +00:00
See the list in `test/acceptance/useragentstrings.yml` with example user agents and their expected `bowser` object.
2019-01-21 19:21:33 +00:00
Whenever you add support for new browsers or notice a bug / mismatch, please update the list and
check if all tests are still passing.
## Testing
2019-01-21 19:28:11 +00:00
If you'd like to contribute a change to `bowser` , modify the files in `src/` , and run the following (you'll need `node` + `npm` installed):
2019-01-21 19:21:33 +00:00
``` sh
$ npm install
$ npm run build #build
$ npm test #run tests
$ npm run lint #check lint rules
```