|
1 |
| -<!-- TODO --> |
| 1 | +# Introduction |
| 2 | + |
| 3 | +First, thank you for considering contributing to Node Redis! It's people like you that make the open source community such a great community! 😊 |
| 4 | + |
| 5 | +We welcome any type of contribution, not just code. You can help with; |
| 6 | + |
| 7 | +- **QA**: file bug reports, the more details you can give the better (e.g. platform versions, screenshots sdk versions & logs) |
| 8 | +- **Docs**: improve reference coverage, add more examples, fix typos or anything else you can spot. At the top of every page on our docs site you can click the `Edit` pencil to go to that pages markdown file, or view the [Docs Repo](https://github.com/invertase/react-native-firebase-docs) directly |
| 9 | +- **Code**: take a look at the open issues. Even if you can't write code, commenting on them, showing that you care about a given issue matters. |
| 10 | +- **Donations**: we welcome financial contributions in full transparency on our [open collective](https://opencollective.com/node-redis). |
| 11 | + |
| 12 | +--- |
| 13 | + |
| 14 | +## Project Guidelines |
| 15 | + |
| 16 | +As maintainers of this project, we want to ensure that the project lives and continues to grow. Not blocked by any |
| 17 | +singular person's time. |
| 18 | + |
| 19 | +One of the simplest ways of doing this is by encouraging a larger set of shallow contributors. Through this we hope to |
| 20 | +mitigate the problems of a project that needs updates but there is no-one who has the power to do so. |
| 21 | + |
| 22 | +### Continuous Deployment |
| 23 | + |
| 24 | +<!-- TODO(Salakar) --> |
| 25 | +Coming soon. |
| 26 | + |
| 27 | +### How can we help you get comfortable contributing? |
| 28 | + |
| 29 | +It is normal for a first pull request to be a potential fix for a problem but moving on from there to helping the |
| 30 | +project's direction can be difficult. |
| 31 | + |
| 32 | +We try to help contributors cross that barrier by offering good first step issues (labelled `good-first-issue`). These |
| 33 | +issues can be fixed without feeling like you are stepping on toes. Generally, these should be non-critical issues that |
| 34 | +are well defined. They will be purposely avoided by mature contributors to the project, to make space for others. |
| 35 | + |
| 36 | +Additionally issues labelled `needs-triage` or `help-wanted` can also be picked up, these may not necessarily require |
| 37 | +code changes but rather help with debugging and finding the cause of the issue whether it's a bug or a users incorrect |
| 38 | +setup of the library or project. |
| 39 | + |
| 40 | +We aim to keep all project discussion inside GitHub issues. This is to make sure valuable discussion is accessible via |
| 41 | +search. If you have questions about how to use the library, or how the project is running - GitHub issues are the goto |
| 42 | +tool for this project. |
| 43 | + |
| 44 | +### Our expectations on you as a contributor |
| 45 | + |
| 46 | +You shouldn't feel bad for not contributing to open source. We want contributors like yourself to provide ideas, keep |
| 47 | +the ship shipping and to take some of the load from others. It is non-obligatory; we’re here to get things done in an |
| 48 | +enjoyable way. :trophy: |
| 49 | + |
| 50 | +We only ask that you follow the conduct guidelines set out in our [Code of Conduct](/CODE_OF_CONDUCT.md) throughout your |
| 51 | +contribution journey. |
| 52 | + |
| 53 | +### What about if you have problems that cannot be discussed in public? |
| 54 | + |
| 55 | +You can reach out to us directly via email (`redis[AT]invertase.io`) or direct message us on |
| 56 | +[Twitter](https://twitter.com/NodeRedis) if you'd like to discuss something privately. |
| 57 | + |
| 58 | +#### Project Maintainers |
| 59 | + |
| 60 | + - Mike Diarmid ([Salakar](https://github.com/Salakar)) @ [Invertase](https://invertase.io) |
| 61 | + - Twitter: [@mikediarmid](https://twitter.com/mikediarmid) |
| 62 | + - Elliot Hesp ([Ehesp](https://github.com/Ehesp)) @ [Invertase](https://invertase.io) |
| 63 | + - Twitter: [@elliothesp](https://twitter.com/elliothesp) |
| 64 | + - Ruben Bridgewater ([BridgeAR](https://github.com/BridgeAR)) |
| 65 | + - Twitter: [@BridgeAR](https://twitter.com/BridgeAR) |
| 66 | + |
| 67 | +Huge thanks to the original author of Node Redis, [Matthew Ranney](https://github.com/mranney) and also to |
| 68 | +[Ruben Bridgewater](https://github.com/BridgeAR) for handing over this project over to new maintainers so it could be |
| 69 | +continuously maintained. |
| 70 | + |
| 71 | +--- |
| 72 | + |
| 73 | +## Code Guidelines |
| 74 | + |
| 75 | +### Your First Contribution |
| 76 | + |
| 77 | +Working on your first Pull Request? You can learn how from this _free_ series, |
| 78 | +[How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github). |
| 79 | + |
| 80 | +### Testing Code |
| 81 | + |
| 82 | +Node Redis has a full test suite with coverage setup. |
| 83 | + |
| 84 | +To run the tests use the `npm test` command. To check detailed coverage locally run the `npm run coverage` command after |
| 85 | +testing and open the generated `./coverage/index.html` in your browser. |
| 86 | + |
| 87 | +### Submitting code for review |
| 88 | + |
| 89 | +The bigger the pull request, the longer it will take to review and merge. Where possible try to break down large pull |
| 90 | +requests into smaller chunks that are easier to review and merge. It is also always helpful to have some context for |
| 91 | +your pull request. What was the purpose? Why does it matter to you? What problem are you trying to solve? Tag in any linked issues. |
| 92 | + |
| 93 | +To aid review we also ask that you fill out the pull request template as much as possible. |
| 94 | + |
| 95 | +> Use a `draft` pull request if your pull request is not complete or ready for review. |
| 96 | +
|
| 97 | +### Code review process |
| 98 | + |
| 99 | +Pull Requests to the protected branches require two or more peer-review approvals and passing status checks to be able |
| 100 | +to be merged. |
| 101 | + |
| 102 | +When reviewing a Pull Request please check the following steps on top of the existing automated checks: |
| 103 | + |
| 104 | +- Does the it provide or update the docs if docs changes are required? |
| 105 | +- Have the tests been updated or new tests been added to test any newly implemented or changed functionality? |
| 106 | +- Is the testing coverage ok and not worse than previously? |
0 commit comments