diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bd38d09620..d0d510dc68 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,18 +8,44 @@ Before opening an issue, please search the [issue tracker](https://github.com/re Please ask any general and implementation specific questions on [Stack Overflow with a Redux Toolkit tag](http://stackoverflow.com/questions/tagged/redux-toolkit?sort=votes&pageSize=50) for support. -## New Features +We ask you to do this because StackOverflow has a much better job at keeping popular questions visible. Unfortunately good answers get lost and outdated on GitHub. -Please open an issue with a proposal for a new feature or refactoring before starting on the work. We don't want you to waste your efforts on a pull request that we won't want to accept. +If your question gets closed or you don't get a reply after a few days, consider opening a [discussion](https://github.com/reduxjs/redux-toolkit/discussions) or joining the [Reactiflux](https://discord.gg/reactiflux) discord server and asking in the #redux channel. + +### Help Us Help You + +On both websites, it is a good idea to structure your code and question in a way that is easy to read to help people to answer it. For example, we encourage you to use syntax highlighting, indentation, and split text in paragraphs. + +Please keep in mind that people spend their free time trying to help you. You can make it easier for them if you provide versions of the relevant libraries and a runnable small project reproducing your issue. You can put your code on [JSBin](https://jsbin.com) or, for bigger projects, on GitHub. Make sure all the necessary dependencies are declared in `package.json` so anyone can run `npm install && npm start` and reproduce your issue. + +## Ways You Can Contribute + +There are several ways you can contribute to the repository. Instead of developing a feature or fixing a bug, you can also contribute by updating or writing [documentation](https://github.com/reduxjs/redux-toolkit/tree/master/docs) for a specific feature or implementation if you know you are good with documentation. Alternatively, you can add [examples](https://github.com/reduxjs/redux-toolkit/tree/master/examples) of any 3rd party implementation like GraphQL or React (just an example) that would help users to understand and easily integrate Redux Toolkit with that specific framework and library. ## Getting started Visit the [Issue tracker](https://github.com/reduxjs/redux-toolkit/issues) to find a list of open issues that need attention. +### Bugs and Improvements + +We use the [Issue tracker](https://github.com/reduxjs/redux-toolkit/issues) to keep track of bugs and improvements to Redux Toolkit itself, its examples, and the documentation. We encourage you to open issues to discuss improvements, architecture, theory, internal implementation, etc. If a topic has been discussed before, we will ask you to join the previous discussion. + +### New Features + +Please open an [issue](https://github.com/reduxjs/redux-toolkit/issues) with a proposal for a new feature or refactoring before starting on the work. We don't want you to waste your efforts on a pull request that we won't want to accept. + ### Fork the repository Please use the GitHub UI to [fork this repository](https://github.com/reduxjs/redux-toolkit) (_read more about [Forking a repository](https://docs.github.com/en/github/getting-started-with-github/fork-a-repo)_). Redux Toolkit has forked builds enabled in the CI, so you will see the build status of your fork's branch. +![Fork Button](https://docs.github.com/assets/cb-40742/mw-1440/images/help/repository/fork-button.webp) + +Fork, then clone the repo: + +```sh +git clone https://github.com/your-username/redux-toolkit.git +``` + ### Install ```bash @@ -27,6 +53,14 @@ $ cd redux-toolkit $ yarn ``` +### Build + +You can build the packages with the following command: + +``` +yarn build +``` + ### Tests You can run tests for all packages with: @@ -41,14 +75,6 @@ To continuously watch and run tests, run the following: yarn test --watch ``` -### Build - -You can build the packages with the following command: - -``` -yarn build -``` - ## Git workflow / Submitting Changes - Open a new issue in the [Issue tracker](https://github.com/reduxjs/redux-toolkit/issues). diff --git a/packages/toolkit/README.md b/packages/toolkit/README.md index 40c1239490..a2514f3e10 100644 --- a/packages/toolkit/README.md +++ b/packages/toolkit/README.md @@ -104,3 +104,7 @@ RTK Query includes these APIs: - `setupListeners()`: A utility used to enable refetchOnMount and refetchOnReconnect behaviors. See the [**RTK Query Overview**](https://redux-toolkit.js.org/rtk-query/overview) page for more details on what RTK Query is, what problems it solves, and how to use it. + +## Contributing + +Please refer to our [contributing guide](/CONTRIBUTING.md) to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Redux Toolkit.