BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Google Firebase - a Complete Back-End Solution for Mobile and Web

Google Firebase - a Complete Back-End Solution for Mobile and Web

Leia em Português

Google has introduced a new version of Firebase at I/O 2016, the platform offering a comprehensive solution for creating a back-end infrastructure for mobile (iOS and Android) and the web.

From the initial Mobile-Back-end-as-a-Service (MBaaS), Google has transformed Firebase into a complete back-end solution for both mobile and web development. Firebase has one SDK and one console to create and manage applications across Android, iOS and the web. Firebase comes with the following features:

  • AdMob – integration with Google AdMob
  • AdWords – integration with Google AdWords
  • Analytics – a dashboard for monitoring user behavior, demographic segmentation, and campaign performance
  • Authentication – support for user authentication via email, Facebook, GitHub, Google Sign-In, and Twitter
  • Crash Reporting – monitoring application’s errors across all devices. It is integrated with Analytics to evaluate user behavior upon application crash.
  • Database – a NoSQL database used to store JSON data
  • Dynamic Links – deep links taking an user to the desired page within an application
  • Hosting – a globally distributed CDN for web applications
  • Indexing – used to index an application for Google Search
  • Invites – enables users to share information about an application with other users
  • Messaging – this is the former Google Cloud Messaging (GCM) service that has been rebranded as Firebase Cloud Messaging (FCM)
  • Notifications – managing notifications sent to users
  • Offline – enables applications to store data in a local cache so they can keep running while offline
  • Real time – data is saved to the cloud database in real time
  • Remote Config – enables developers to modify the behavior or appearance of an application without requiring users to download a new version of the app. This feature is used to change the application’s visual theme, address different user demographics, running A/B tests, etc.
  • Storage – storing user audio, pictures and video
  • Synchronization – when data changes on a device, it is pushed to Firebase, then back to all related devices. Also, a device is automatically updated with the latest snapshot when coming online after being offline
  • Test Lab – testing an application on real devices

All features are available for Android and iOS development, except for Test Lab which is not supported for iOS devices. Some of the features are not supported yet for web applications.

The Firebase SDK supports programming in C++, Java, JavaScript, JavaScript/Node.js, Objective-C, and Swift. Angular, Backbone, Ember and React are supported through bindings to the database. Google added a number of helper libraries: FirebaseUI, Geofire, Firebase Queue, FirebaseJobDispatcher. Their name indicates what their purpose is. Firebase also supports importing large JSON data sets and integration with ElasticSearch.

Firebase is hosted and maintained by Google in their cloud datacenters. It comes with a free pricing plan for those interested to see how it works. There is also a pay-as-you-go plan that provides full integration with the Google Cloud Platform.

For those interested in getting deeper into how Firebase works, we recommend the following videos from Google I/O 2016: Firebase Overview, Migrate to Firebase, Use Firebase Analytics to Build Extraordinary Apps, Introducing Firebase Authentication, Deep Dive into the Real-time Database.

Rate this Article

Adoption
Style

BT