/redux-persist-electron-storage

Redux persist adapter for electron-store

Primary LanguageJavaScript

redux-persist-electron-storage

npm version npm downloads Build Status Greenkeeper badge

Storage adapter to use electron-store with redux-persist

Installation

npm

npm i -S electron-store redux-persist-electron-storage

yarn

yarn add electron-store redux-persist-electron-storage

Usage

To use redux-persist-electron-storage, configure redux-persist according to its documentation.

Modify the classic redux-persist configuration as follows:

  • Do not import redux-persist/lib/storage anymore, as we use an alternative storage.
  • Import redux-persist-electron-storage:
import createElectronStorage from "redux-persist-electron-storage";
  • Modify the options for persistReducer in order to use the storage dedicated to Electron:
const persistConfig = {
  key: 'root',
  storage: createElectronStorage()
}

const persistedReducer = persistReducer(persistConfig, rootReducer)

You can either pass an instance of electron-store or pass options like below:

const electronStore = new ElectronStore()
createElectronStorage({
  electronStore
})
createElectronStorage({
  electronStoreOpts: {
    encryptionKey: 'MY_ENCRYPTION_KEY'
  }
})

Hint: The passed instance is preferred over passed options