Rematch
Rematch is Redux best practices without the boilerplate. No more action types, action creators, switch statements or thunks.
We're actively looking for a documentation deployment solution, for now you can look @next documentation here: https://rematch.netlify.app/#/
Features
Redux is an amazing state management tool, supported by a healthy middleware ecosystem and excellent devtools. Rematch builds upon Redux by reducing boilerplate and enforcing best practices. It provides the following features:
- No configuration needed
- Reduces Redux boilerplate
- Built-in side-effects support
- React Devtools support
- TypeScript support
- Supports dynamically adding reducers
- Supports hot-reloading
- Allows to create multiple stores
- Supports React Native
- Extendable with plugins
- Many plugins available out of the box:
- for persisting data with redux-persist
- for wrapping state with immer.js
- for creating selectors with reselect
- ...and others
Redux vs Rematch
Redux | Rematch | |
---|---|---|
simple setup | |
|
less boilerplate | |
|
readability | |
|
configurable | |
|
redux devtools | |
|
generated action creators | | |
async | thunks | async/await |
Migrate From Redux
Migrating from Redux to Rematch may only involve minor changes to your state management, and no necessary changes to your view logic. See the migration reference for the details.
Composable Plugins
Rematch and its internals are all built upon a plugin pipeline. As a result, developers can make complex custom plugins that modify the setup or add data models, often without requiring any changes to Rematch itself. See the plugins developed by the Rematch team or the API for creating plugins.
Contact & Support
- Create a GitHub issue for bug reports, feature requests, or questions
- Add a
⭐️ star on GitHub to support the project!
Contributors
Thank you to all the people who have already contributed to rematch!
Made with contributors-img.
License
This project is licensed under the MIT license.