Skip to content

zewish/redux-remember

Repository files navigation

Redux Remember Logo

Redux Remember saves (persists) and loads (rehydrates) your Redux state from any key-value storage

NPM Version Build Status Coverage Status NPM Downloads

Documentation | Live Demo | GitHub


Features

  • Selective persistence - Save and load only the keys you specify
  • Multi-platform - Works with React, React Native/Expo or any app that uses Redux
  • Supports different storage drivers - localStorage, sessionStorage, AsyncStorage (React Native), or your own custom driver
  • Battle-tested - Fully tested with Redux 5.0+ and Redux Toolkit 2.0+
  • TypeScript ready - Fully type safe with TypeScript definitions included

Installation

npm install redux-remember
# or
pnpm/yarn/bun add redux-remember

Quick Start

import { configureStore } from '@reduxjs/toolkit';
import { rememberReducer, rememberEnhancer } from 'redux-remember';
import reducers from './reducers';

const rememberedKeys: (keyof typeof reducers)[] = ['keyToPersist'];

const reducer = rememberReducer(reducers);
const store = configureStore({
  reducer,
  enhancers: (getDefaultEnhancers) => getDefaultEnhancers().concat(
    rememberEnhancer(window.localStorage, rememberedKeys)
  )
});

See the Quick Start guide for complete setup instructions.


Development

This is a monorepo managed with Turborepo:

Package Description
packages/redux-remember The main library
packages/docs-website Documentation site
npm install
npm run build     # Build all packages
npm run test      # Run tests
npm run typecheck # Run type checking
npm run lint      # Run linter

License

MIT

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •