GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - rematch/rematch: The Redux Framework

This repository was archived by the owner on Aug 2, 2025. It is now read-only.
BranchesTags
Open more actions menu

Latest commit

 

History

1,625 Commits
1,625 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
.husky
.husky
 
 
blog
blog
 
 
docs
docs
 
 
examples
examples
 
 
packages
packages
 
 
website
website
 
 
.editorconfig
.editorconfig
 
 
.eslintignore
.eslintignore
 
 
.eslintrc.js
.eslintrc.js
 
 
.gitignore
.gitignore
 
 
.gitpod.yml
.gitpod.yml
 
 
.npmignore
.npmignore
 
 
.prettierignore
.prettierignore
 
 
.prettierrc.json
.prettierrc.json
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
jest.config.js
jest.config.js
 
 
lerna.json
lerna.json
 
 
package.json
package.json
 
 
testsetup.js
testsetup.js
 
 
tsconfig.base.json
tsconfig.base.json
 
 
yarn.lock
yarn.lock
 
 

Repository files navigation

Rematchjs

Rematch is Redux best practices without the boilerplate. No more action types, action creators, switch statements or thunks in less than 1.4 kilobytes.


Chat on Discord Rematch CI Bundle size File size lerna https://img.shields.io/lgtm/grade/javascript/github/rematch/rematch?logo=typescript Gitpod Ready-to-Code

Documentation · Quickstart · Examples · Contribute · Licence

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

Are you ready to use Rematch?

In a few lines you can get easily asynchronous calls to an external API and data stored globally. It's amazing, with Redux you will needs tons of boilerplate, libraries and extra configuration.

type PlayersState = {
    players: PlayerModel[]
}

export const players = createModel<RootModel>()({
    state: {
        players: [],
    } as PlayersState,
    reducers: {
        SET_PLAYERS: (state: PlayersState, players: PlayerModel[]) => {
            return {
                ...state,
                players,
            }
        },
    },
    effects: (dispatch) => {
        const { players } = dispatch
        return {
            async getPlayers(): Promise<any> {
                let response = await fetch('https://www.balldontlie.io/api/v1/players')
                let { data }: { data: PlayerModel[] } = await response.json()
                players.SET_PLAYERS(data)
            },
        }
    },
})

Check it out, right now!

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.

Licence

This project is licensed under the MIT license.

About

The Redux Framework

rematchjs.org

Topics

angularhacktoberfestimmerjavascriptreactreact-nativereact-reduxreduxredux-best-practicesredux-made-easyrematchstate-managementtypescriptvue

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing
Activity
Custom properties

Stars

8.4k stars

Watchers

4 watching

Forks

408 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.