# Contributing to react-frame-rate ## Contributing 👍🎉 Thanks for contributing! 🎉👍 We expect contributors follow [code of conduct](CODE_OF_CONDUCT.md). All conversations and discussions on GitHub (issues, pull requests) must be respectful and harassment-free. ## Where to contribute All [issues](https://github.com/stesel/react-frame-rate/issues) are ready for grabs. In case of doubt, ask a [owner of this repository](https://github.com/stesel) by mentioning on the issue. **Refactoring** code, e.g., improving the code without modifying the behavior is an area that can probably be done based on intuition and may not require much communication to be merged. **Fixing bugs** may also not require a lot of communication, but the more, the better. Please surround bug fixes with ample tests. Bugs are magnets for other bugs. Write tests near bugs! **Building features** is the area which will require the most communication and/or negotiation. Every feature is subjective and open for debate. If your feature involves user-facing design changes, please provide a mockup first so we can all get on the same page. As always, when in doubt, ask! ## How to contribute 1. Make sure you have installed [Node](https://nodejs.org/en/download/) 2. Fork [repository](https://github.com/stesel/react-frame-rate/fork) 3. Create a branch, naming it either a feature or bug: `git checkout -b feature/that-new-feature` or `bug/fixing-that-bug` 4. Run `npm start` to see your result locally. 5. Run [Jest](https://jestjs.io/) tests with command `npm run test`. Add new test if its needed. 6. Run [TSLint](https://palantir.github.io/tslint/) with command `npm run lint`. 3. Code and commit your changes. Bonus points if you write a [good commit message](https://chris.beams.io/posts/git-commit/): `git commit -m 'Add some feature'` 4. Push to the branch: `git push origin feature/that-new-feature` 5. [Create a pull request](https://github.com/stesel/react-frame-rate/pulls) for your branch 🎉 ## Create an issue If you find any bugs or have some ideas for improvenments. Please check [issues](https://github.com/stesel/react-frame-rate/issues) page. ## Publish new version New release triggers github action which builds and publishes new version of the package. 1. Bump version in `package.json`. 2. Create new tag named by new version. 3. Draft new release according to new version with new created tag. 4. Add release notes. 5. Publish new release.