Michael Diarmid e5c6c59469 Update README.md
2018-09-03 12:50:39 +01:00
2017-08-30 18:13:47 +01:00
2017-02-14 16:02:54 +00:00
2017-02-14 16:02:54 +00:00
2017-07-05 09:55:23 -04:00
2017-09-25 11:33:51 +01:00
2017-06-22 14:43:36 +01:00
2017-05-25 17:00:53 +01:00
2017-10-23 09:22:06 +01:00
2017-08-18 11:58:07 +01:00
2017-10-31 10:38:56 +00:00
2017-10-31 10:38:56 +00:00
2017-03-24 02:56:28 +00:00
2018-09-03 12:50:39 +01:00


React Native Firebase

NPM downloads NPM version License Backers on Open Collective Sponsors on Open Collective Chat Follow on Twitter

Introduction

React Native Firebase is a light-weight javascript layer connecting you to the native Firebase SDKs for both iOS and Android which aimes to mirror the offical Firebase Web SDK as closely as possible.

Although the official Firebase JS SDK will work with React Native; it is mainly built for the web and has a limited feature-set compared to native.

Using the native Firebase SDKs with React Native Firebase allows you to consume device SDKs which don't exist on the Firebase JS SDK - for example; Remote Config, Performance Monitoring, Dynamic Links, Analytics and more (see the feature table below for comparison).


We also support both databases: Realtime Database and Cloud Firestore!



Docs | Starter App | iOS Install Guide | Android Install Guide | FAQs | Feature Requests


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, analytics 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/functionality from the Web SDK are usable within React Native.

'?' indicates partial support

Firebase Features v1.x.x v2.x.x v3.x.x Web SDK
AdMob
Analytics            
App Indexing          
Authentication
-- Phone Auth
Core ?
-- Multiple Apps
Cloud Firestore
Cloud Messaging (FCM) ?
Crash Reporting
Dynamic Links
Invites
Performance Monitoring
Realtime Database
-- Offline Persistence ?
-- Transactions
Remote Config
Storage ?

Supported versions - React Native / Firebase

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

1.X.X 2.0.X 2.1.X / 2.2.X 3.0.X
React Native 0.36 - 0.39 0.40 - 0.46 0.47 + 0.48 +
Firebase Android SDK 10.2.0 + 11.0.0 + 11.0.0 + 11.4.2 +
Firebase iOS SDK 3.15.0 + 4.0.0 + 4.0.0 + 4.3.0 +

License

Description
No description provided
Readme 20 MiB
Languages
JavaScript 44.6%
Java 31.8%
Objective-C 23.3%
Ruby 0.2%
Starlark 0.1%