n6g7 / redux-saga-firebase

A redux saga integration for firebase.
https://redux-saga-firebase.js.org/
MIT License
284 stars 57 forks source link
firebase redux redux-saga saga

⚠️ This project isn't maintained

I unfortunately don't have time to maintain this project anymore. I'd be happy to share commit access with anyone interested in taking over the project, get in touch if you'd like to revive rsf!


redux-saga-firebase

CircleCI npm version Coverage Status

A redux-saga integration for firebase.

Quick start

Install with:

yarn add redux-saga-firebase

Initialize a firebase app and instantiate redux-saga-firebase:

import firebase from 'firebase'
import '@firebase/firestore' // 👈 If you're using firestore
import ReduxSagaFirebase from 'redux-saga-firebase'

const myFirebaseApp = firebase.initializeApp({
  apiKey: 'qosjdqsdkqpdqldkqdkfojqjpfk',
  authDomain: 'my-app.firebaseapp.com',
  databaseURL: 'https://my-app.firebaseio.com',
})

const reduxSagaFirebase = new ReduxSagaFirebase(myFirebaseApp)

You can now use reduxSagaFirebase methods in your sagas:

function* syncSaga() {
  yield fork(reduxSagaFirebase.database.sync, 'todos', {
    successActionCreator: syncTodos,
  })
}

Make sure your client provides a implementation of fetch, either natively or via a polyfill (whatwg-fetch is a pretty good one).

API

Authentication

Database

Firestore

Functions

Messaging

Storage

Contributing