Full-Stack Application Development with Firebase Auth, Cloud Firestore NoSQL Database, and Python Flask on Google's Free Spark Plan.
Everything today runs on Firebase's free Spark plan โ no credit card, no server, no secrets to babysit. By the end of this session, you'll have shipped a real check-in app.
Traditional auth pain points, Firebase origins & BaaS philosophy.
7 auth methods, NoSQL documents, collections & security rules.
Spark plan limits ($0/mo) & Python Flask + Firebase architecture.
Console setup & building live Python Flask backend app.
Click an option below to test your understanding of backend effort before we explore Firebase.
Click each step below. This is what you'd build by hand with a MySQL-backed login system โ before writing a single feature.
Never store plaintext. Pick bcrypt/argon2, tune cost factors, get it wrong once and every password leaks.
Columns, indexes, migrations โ and you own every schema change forever.
Issue tokens, store/refresh them, handle expiry, protect against replay attacks.
DB credentials, JWT signing keys, .env files โ none of it can leak, all of it must rotate.
SMTP setup, expiring tokens, rate limiting โ a whole subsystem just for "forgot password."
Look at what traditional server development forces you to build from scratch versus Google Firebase.
No server, no password table, no secrets. Firebase Auth handles hashing, tokens and email flows for you.
// create an account โ that's it import { getAuth, createUserWithEmailAndPassword } from "firebase/auth"; const auth = getAuth(); await createUserWithEmailAndPassword(auth, email, password); // hashing, storage, uid โ all handled
// log a student back in import { getAuth, signInWithEmailAndPassword } from "firebase/auth"; const auth = getAuth(); await signInWithEmailAndPassword(auth, email, password); // returns a signed-in user + secure token
// react to auth state anywhere in the app import { getAuth, onAuthStateChanged } from "firebase/auth"; onAuthStateChanged(getAuth(), (user) => { if (user) console.log(user.uid, "is signed in"); });
Swap the provider (Google, phone OTP) without changing this shape at all.
Created in 2011 by James Tamplin & Andrew Lee, Firebase evolved into Google's premier BaaS (Backend-as-a-Service) app platform.
Created as a real-time web chat API allowing instant message embedding.
Developers used Envolve to sync arbitrary app data. Firebase launched for NoSQL sync.
Google acquired Firebase to form the pillar of modern Google Cloud app development.
Click tabs below to explore Build (Core Services), Release & Monitor, and Engage pillars:
Email, Google, Phone, Anonymous, OAuth, and Passkeys without password hashing.
NoSQL document database with live WebSocket sync and offline support.
Store and serve user media files directly from Google Cloud Storage.
Run serverless Python or Node.js microservices triggered by HTTP or DB events.
Real-time crash stack traces and issue prioritization for mobile and web.
Monitor HTTP request latencies and UI rendering bottlenecks live.
Unlimited event tracking, user funnels, and retention insights.
Send targeted push notifications across web, iOS, and Android.
Click each method to view code snippets or test simulated Auth execution:
No tables, no joins, no schema to declare upfront. Click a document to expand it.
Test user roles below to simulate how Firestore Security Rules grant or deny client requests:
Everything below is $0/month โ more than enough for a student project or a class demo.
One Auth flow, one Firestore write, one live-updating dashboard โ connected to Python Flask.
checkinsEveryone follows along on their own laptop โ no card required.
Go to console.firebase.google.com and sign in with any Google account.
Click Add project, name it, skip Google Analytics for now.
Open Build โ Authentication โ Get started, enable Email/Password & Anonymous.
Open Build โ Firestore Database โ Create database, start in test mode.
Go to Project settings โ Service accounts, generate private key
(serviceAccountKey.json).
Run pip install -r requirements.txt and launch python app.py!
Use the countdown timer as we run the live Python Flask + Firebase project together!
cd flask_demopip install -r requirements.txtpython app.pyNo server, no MySQL, no secrets โ auth and a live database, all on Spark.
Questions? Let's discuss.