Lesson 1 / 25

What Firebase Is

Google's app development platform.

A family of managed services

Firebase is Google's platform for building web and mobile apps without running your own servers. Core building blocks include Authentication (user sign-in), Cloud Firestore (a document database with realtime updates), the older Realtime Database (one large JSON tree), Cloud Storage for Firebase (files), Cloud Functions for Firebase (server-side code), and Hosting / App Hosting (web deploys). Around them sit app features such as Cloud Messaging, Remote Config, Analytics and Crashlytics. A Firebase project is also a Google Cloud project, so you can reach the same resources from Google Cloud tools. The product list and plan details change over time, so check the docs.

A backend you call from the client

Firebase is a set of managed backend services that apps use directly through client SDKs, guarded by Security Rules.

Three ideas: the product family, the client SDK model, project setup and config.
Figure 1.1 — Products, the client-to-backend model and project config.

Which product for which job

Rules of thumb.

sign users in                       -> Authentication
structured app data, queries        -> Cloud Firestore
simple low-latency synced state     -> Realtime Database
images, video, user uploads         -> Cloud Storage for Firebase
trusted server logic, webhooks, cron -> Cloud Functions for Firebase
static sites / SSR web apps         -> Hosting / App Hosting
push notifications                  -> Cloud Messaging (FCM)
feature flags, config changes       -> Remote Config

A furnished office instead of an empty building

Firebase hands you rooms that already have plumbing (auth, database, files, hosting); you decorate them, but you accept the building's layout.

Quick check: Which Firebase product is a document database with realtime listeners and rich queries?

  • Remote Config
  • Cloud Messaging
  • Cloud Firestore
  • Hosting
Answer

Cloud Firestore — Firestore stores documents in collections.