Firebase Invites for React Native - firebase

We are currently using Firestack on a React Native project which is great, however we also need the features available via Firebase's "Invites" capability.
Is anyone aware of a React Native module (eg on github) for Firebase Invites, iOS and Android ?
Or alternatively - is there another service/API that can provide similar app invite management for mobile (ideally w/ React Native support but we can always bridge if needed) ?
Many thanks.

Firebase invites is based on Firebase dynamic links: Firebase Invites
React-Native-Firebase is a great open source library to use Firebase with react native. React-Native-Firebase
The library supports Dynamic Links so with a little work you can use it to enable the Firebase Invites feature.
React-Native-Firebase (Dynamic Links)

Related

Integration of Branch.io with Google Firebase in React Native

I need to Integrate Branch.io with Google Firebase Account for one of my mobile apps built in react native so I can be able to Track all my deep links data on Google Firebase or Google Analytics Dashboard. but the issue is the official branch.io documentation only shows the implementation for the native apps (like in Java, Kotlin, or Swift) and not for the React Native apps. I am also attaching the reference link from the branch.io official documentation to provide a better view of what exactly I want.
https://help.branch.io/using-branch/page/firebase

Is there a way to use firebase using expo react native?

I will build an offline app using expo react native is that possible ?
if yes can anyone please tell me how ?
Did you take a look here. I thik you already asked this ony a comment on one of our previous questions.
For the offline features maybe this can help to.
Please check out:
https://docs.expo.dev/guides/using-firebase/
TLDR: If you'd like to use Firebase in the Expo Go app with the managed workflow, they recommend using the Firebase JS SDK. It supports Authentication, Firestore & Realtime databases, Storage, and Functions on React Native. Other modules like Analytics are not supported through the Firebase JS SDK, but you can use expo-firebase-analytics for that. If you'd like access to the full suite of native firebase tools, we recommend using the bare workflow and react-native-firebase, because we cannot support this in the Expo Go app currently.

Google Signin on React Native(+Firebase) for both platforms (IOS, Android)

I am building an app using React Native with firebase using React Native. So far I am using one code of React Native for both IOS and Android. Now I want to implement Google Signin, later I want to include Facebook and Github logins, but I cannot find how to implement it for both platforms. As far as I understand it, IOS needs some podfile, and Android requires google-services.json. I found some tutorials on how to connect Google signin on each platform. If I follow both tutorials(including installing potfile and service,json), would it work on both platforms? Is it possible to have 1 code that works on both platforms?
these can be used for google and facebook logins
https://github.com/react-native-google-signin/google-signin
https://github.com/thebergamo/react-native-fbsdk-next/

Full Firebase React-native app to offline persistance [duplicate]

I have an existing iOS app that I'd like to start adding some React Native screens to. The app uses Firebase with persistence enabled so that it works offline. Is there a way to also use Firebase directly within React Native while maintaining offline functionality?
If the answer is "Yes", do iOS and React Native share the same local data store? This would be important, so that offline data changes on iOS screens would reflect data changes made from React Native screens and vice versa.
Thanks for sharing your insight on this!
Alternatively, you can use Firestack, which is a native library that works with both iOS and Android on react native.
Offline support is enabled along with storage, the real-time database, authentication, remote configuration (in development), etc.
(disclosure: I am one of the primary authors of Firestack)
Firebase's offline disk persistence is currently only available in its native iOS and Android SDKs. It is not yet available for JavaScript SDK.
The javascript SDK will persist new write requests when you are offline and will sync with the server once you go online. But if you were hoping to show a list with data that was previously fetched from firebase, then you are out of luck with Javascript.
One of the answers mentions Firestack, but it is no longer supported.
On a project I just ended up installing this package https://github.com/invertase/react-native-firebase. It is a bridge to the native ios & Android SDKs for firebase and if you use it you can also use persistence.
Tested and verified. All works great! :)
UPDATE:
It is now possible https://firebase.google.com/docs/database/web/offline-capabilities
OBSOLETE:
As of Firebase JavaScript SDK 3.1.0, offline persistance is still unavailable. It's recommended you use React Native's AsyncStorage.
All of the answers above are out of date!
As of JULY 2020 offline persistence is supported out of the box when you use react-native-firebase.
Read more here: https://rnfirebase.io/firestore/usage#offline-capabilities

Expo and react-native-firebase

I'm trying to integrate Firebase into my expo app using the react-native-firebase framework which has several advantages over the regular firebase package when it comes to react-native apps.
However, I'm running into difficulties since the instructions say I must add the GoogleService-Info.plist to ios/[YOUR APP NAME]/GoogleService-Info.plist, and expo apps don't have an ios folder from what I understand.
Am I pretty much screwed or is there a solution for this?
As the react-native-firebase documentation says, you need to eject your app if you want to use this library with expo. Be mind that eject action is not reversible. More info here and here and here.
If you use Expo and would like to use this package, you'll need to
eject. If you do not want to eject, but wish to make use of features
such as Realtime Database (without offline support) & Authentication,
you can still use the Firebase Web SDK in your project.
Today, you can't have the Firebase react-native sdk with expo. And this is not planned according to: https://expo.canny.io/feature-requests/p/full-native-firebase-integration.
So you have to play only with the javascript sdk from Firebase.
Cloud Firestore is new, it will be better for the javascript sdk for offline and sync.
The author of this thread: Fresh Detached Expo + RNFirebase not running on Android has managed to get it working with the Detached ExpoKit - so it's not a full ejection and keeps the expo features.
I have asked for the steps he took so we can see about getting something added to our docs and possibly a Detached ExpoKit version of our starter app.
See the expokit detaching docs for information about ExpoKit.
It's in progress --
https://blog.expo.io/using-firebase-in-expo-e13844061832
Using Firebase in Expo
And how we plan on adding it to the client 😁
We are super excited to announce that we will be rolling out a suite of Unimodules that will provide you with easy access to native Firebase features! initially you will only be able to use these in a detached ExpoKit App. But over time we will be working to add these to vanilla Expo.
TL;DR
Here are the modules, you will need to detach to add them for now:
App/Core
Analytics
Authentication
Cloud Firestore
Cloud Functions
Instance ID
Performance Monitor
Realtime Database
Cloud Storage
Remote Config
Firebase Cloud Messaging
Remote Notifications
Dynamic Linking
Invites
Crashlytics
Also TL;DR
Here is a boilerplate: https://github.com/EvanBacon/expo-native-firebase
Update 02-12-2021
Guys expo's eas-build is now public. You can add custom native codes and use react-native-firebase. Here is the link to a youtube tutorial. The video is short and super easy to follow. Here is the link to the docs
Previous answer
If you are using Firebase using the mobile configuration, it does not work, but it worked smoothly when I tried the web configuration. Here is the youtube tutorial. Watch from 38:20 to set up.
I managed to get a working set of react-native with redux, firestore and expo. See Code example at Github.
But it costs the offline-persistence (see https://github.com/firebase/firebase-js-sdk/issues/436). So from my point of view it costs performance, because i need to be online to get a full working app with firestore and react-native.

Resources