Registry / database / redux-storage-middleware

redux-storage-middleware

JSON →
library1.1.292jsnpmunverified

Redux Storage Middleware is a lightweight middleware for Redux that persists state to storage backends (e.g., localStorage) and rehydrates it on app load. Current stable version is 1.1.292. It is maintained by sequencemedia and requires Node >=18.12.0. It distinguishes itself from alternatives like redux-persist by being minimal, with no built-in transforms or migrations, and relies on the storage engine provided by the developer.

npm install redux-storage-middleware
INSTALL
IMPORT
SIG · REDUX-STORAGE-MIDD
R
redux-storage-middleware
databasejavascriptv1.1.292
Install
—
Import
—
Disk
—
Pass rate
0/ 6
Env Coverage0 / 6
glibc
18–22
musl
18–22
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18–226 runs
build_error
glibc
node 18–226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
✓ import storageMiddleware from 'redux-storage-middleware'
✗ const storageMiddleware = require('redux-storage-middleware').default
ESM only; default export is the middleware function.
createStorage
✓ import { createStorage } from 'redux-storage-middleware'
✗ const { createStorage } = require('redux-storage-middleware')
Named export for creating a storage engine; also ESM only.
StorageMiddlewareConfig
✓ import type { StorageMiddlewareConfig } from 'redux-storage-middleware'
✗ import { StorageMiddlewareConfig } from 'redux-storage-middleware'
TypeScript type import; not a runtime value.

Configures and applies redux-storage-middleware with a localStorage engine and custom serialization.

import storageMiddleware from 'redux-storage-middleware'; import { createStore, applyMiddleware } from 'redux'; const storageEngine = { getItem: (key) => Promise.resolve(localStorage.getItem(key)), setItem: (key, value) => Promise.resolve(localStorage.setItem(key, value)), removeItem: (key) => Promise.resolve(localStorage.removeItem(key)), }; const middleware = storageMiddleware({ engine: storageEngine, key: 'my-app-state', serialize: JSON.stringify, deserialize: JSON.parse, }); const store = createStore(rootReducer, applyMiddleware(middleware));
Debug
Known issues
breakingESM only since v1.0.0; require() will not work.
fix
Use import syntax and ensure your project is ESM or use a dynamic import.
affects: >=1.0.0
gotchaMiddleware must be applied before any other middleware that depends on state being persisted.
fix
Ensure storageMiddleware is first in the middleware chain.
affects: >=0.0.1
gotchaThe storage engine must return Promises; synchronous engines like sync localStorage will cause errors if used directly.
fix
Wrap sync operations in Promise.resolve() or use an async storage library.
affects: >=0.0.1
Errors
Common errors & fixes
Cannot find module 'redux-storage-middleware'
Package not installed or not in node_modules.
fix
Run npm install redux-storage-middleware
The engine must be an object with getItem, setItem, removeItem methods
Provided engine does not implement the required interface.
fix
Ensure the engine object has getItem, setItem, removeItem functions.
Upgrade
Version history
1.1.292latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
9 hits · last 30 days
node
8
Resources