Whenever I sign-up for a new online service or an app asks me to sign-in to store some data in the cloud, I generally try to use one of the “sign in with” options, which usually includes Google, Facebook, Twitter, or Microsoft, if they are supposed. Most people already have one or more accounts with these large providers, so it’s convenient, both for the user and for the developer, to support logins this way. For app developers, unless you really want to (or have to) implement your own user authentication system, then you’re better off using an off-the-shelf auth system like Firebase Authentication.
The Firebase Auth SDK makes it easy for developers to add a complete sign-in system with an accompanying UI to their apps. It currently supports basic email/password-based and phone number authentication, but it also supports the following federated identity providers: Google Sign-In, Facebook Login, Signs in with Twitter, Microsoft Azure Active Directory, Yahoo, and GitHub. Now, the service has added another provider, as Google announced late last week that Firebase Authentication now supports Sign in with Apple. Support for Sign in with Apple is currently in beta, but developers can add a Sign in with Apple button to their iOS, Android, or web apps using the latest versions of the Firebase SDKs. Developers no longer need to use a custom authentication system and manually embed a “Sign in with Apple” button on their webpage.
With yet another popular identity provider added to Firebase Auth, developers can encourage more users to sign-up for their services by providing a secure, convenient, and familiar way to sign-up.
What is Firebase Authentication?
Firebase is a real-time database using cloud technology. That permits you to make an application without server-side coding and Rest APIs. All the database related action will be managed by firebase. So, you just need to focus on the Front side. The rest of all back end side will be managed by firebase services like user management, user authentication, database management, Synchronization of data, etc. We just need to do some settings on our website or mobile apps for using Firebase services.
What are the advantages and disadvantages of the Firebase cloud database?
Based on my ongoing R&D in December 2016 for firebase and its services. I have found some advantages and disadvantages of the firebase apps.
- First of all, If your app does run of a centralized DB, and it is used by a lot of users and update data frequently – than Firebase is more capable of handling the Real-Time data updates between devices.
- Your data will be stored in the cloud so it’s available anywhere.
- Firebase is more suitable when you develop Cross-Platform API like Ionic, PhoneGap, Xamarin.
- Finally, If you are storing lots of data, you don’t need to worry about hardware.
- First of all, Unless your app runs on one centralized database and your user base is vast than it’s overkill to update data.
- The storage format of firebase is totally different from SQL, firebase uses JSON format so it’s not easy to migrate.
- You won’t get any Reporting tools like standard SQL.
- The cost of firebase is Limited to 50 Connections and 100mb of Storage.
- If any small update comes from firebase side then you need to update your app and Republish it.
- It is not possible to send push notification campaign using firebase.
- Finally, Limited programming over server side.
When To Use Firebase?
Firebase database is useful when your app requires simple authentication like email, facebook, google. And your product doesn’t require to provide API. the app doesn’t have large data to display. And there is no use of a complex query. Your application has a limited user base because firebase becomes costly when your user base is increased.
Here is the Best Example.
like simple chat App, Restaurant app, simple product listing app like Boneta, Chrono24.
When Not To Use Firebase?
Firebase is not much useful when your user base is vast, products provide API, products have a large amount of data. Then, there are no reporting tools available like SQL, and your app needs a complex query for the result than firebase is not suitable for your application. The Example is Amazon, Flipkart, Uber.