react-native-firebase/README.md

4.1 KiB

React Native Firebase

npm version NPM downloads Package Quality License Chat Chat Donate

RNFirebase makes using Firebase with React Native simple.


Documentation | iOS Install Guide | Android Install Guide | FAQs


Install

npm i react-native-firebase --save

Why

RNFirebase is a light-weight layer sitting on-top of the native Firebase libraries for both iOS and Android which mirrors the Firebase Web SDK as closely as possible.

Although the Firebase Web SDK library will work with React Native, it is mainly built for the web.

RNFirebase provides a JavaScript bridge to the native Firebase SDKs for both iOS and Android therefore Firebase will run on the native thread, allowing the rest of your app to run on the JS thread. The Firebase Web SDK also runs on the JS thread, therefore potentially affecting the frame rate causing jank with animations, touch events etc.

The native SDKs also allow us to hook into device sdk's which are not possible with the web SDK, for example crash reporting, offline realtime database support, analyics and more!

All in all, RNFirebase provides much faster performance (~2x) over the web SDK and provides device sdk's not found in the web sdk (see the feature table below).


Supported Firebase Features

The Web SDK column indicates what modules from the Firebase Web SDK are usable with React Native.

Firebase Features v1 v2 Web SDK
AdMob
Analytics            
App Indexing          
Authentication
Cloud Messaging
Crash Reporting
Dynamic Links
Invites
Performance Monitoring
Realtime Database
- Offline Persistance
- Transactions
Remote Config
Storage

Supported versions - React Native / Firebase

The table below shows the supported version of react-native-firebase for different React Native versions

v0.36 - v0.39 v0.40 - v0.46 v0.47 +
react-native-firebase 1.X.X 2.X.X 2.1.X

The table below shows the minimum supported versions of the Firebase SDKs for each version of react-native-firebase

v1 v2
Firebase Android SDK 10.2.0+ 11.0.0 +
Firebase iOS SDK 3.15.0+ 4.0.0 +

License

  • MIT