diff --git a/README.md b/README.md index 0eaecab6..79834718 100644 --- a/README.md +++ b/README.md @@ -1,40 +1,27 @@ -# React Native Firebase +

+ +
+
+

React Native Firebase

+

-[![npm version](https://img.shields.io/npm/v/react-native-firebase.svg?style=flat-square)](https://www.npmjs.com/package/react-native-firebase) -[![NPM downloads](https://img.shields.io/npm/dm/react-native-firebase.svg?style=flat-square)](https://www.npmjs.com/package/react-native-firebase) -[![Package Quality](http://npm.packagequality.com/shield/react-native-firebase.svg?style=flat-square)](http://packagequality.com/#?package=react-native-firebase) -[![License](https://img.shields.io/npm/l/react-native-firebase.svg?style=flat-square)](/LICENSE) -[![Chat](https://img.shields.io/badge/chat-on%20discord-7289da.svg?style=flat-square)](https://discord.gg/t6bdqMs) -[![Chat](https://img.shields.io/badge/chat-on%20gitter-a0e7a0.svg?style=flat-square)](https://gitter.im/invertase/react-native-firebase) -[![Donate](https://img.shields.io/badge/Donate-Patreon-green.svg?style=flat-square)](https://www.patreon.com/invertase) +

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

+## Introduction -**RNFirebase** makes using [Firebase](http://firebase.com) with React Native simple. +**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](https://www.npmjs.com/package/firebase) will work with React Native; it is mainly built for the web and has a limited feature-set compared to native. -> [Documentation](https://invertase.io/react-native-firebase) | [iOS Install Guide](http://invertase.io/react-native-firebase/#/installation-ios) | [Android Install Guide](http://invertase.io/react-native-firebase/#/installation-android) | [FAQs](http://invertase.io/react-native-firebase/#/faqs) - -
- -### Install -```bash -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](https://www.npmjs.com/package/firebase) 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](https://facebook.github.io/react-native/docs/performance.html#javascript-frame-rate). 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). +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). --- ### Supported Firebase Features