Firebase & Firestore Masterclass
4.3 (594 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,185 students enrolled

Firebase & Firestore Masterclass

Full-stack Development with Angular 10, Firestore, Firebase Storage & Hosting, Firebase Cloud Functions & AngularFire
Bestseller
4.3 (594 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,185 students enrolled
Last updated 7/2020
English
English [Auto]
Current price: $104.99 Original price: $149.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 7 hours on-demand video
  • 3 articles
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Code in Github repository with downloadable ZIP files per section
  • Serverless Architecture Design
  • NoSql Database (Firestore)
  • Serverless Angular development with AngularFire
  • Serverless File Upload with Firebase Storage
  • a full drop-in Authentication solution: Firebase UI and Firebase Authentication
  • Secure client-side data modification operations with Firestore Security Rules
  • High performance, free SSL hosting with Firebase Hosting
  • Image processing with Firebase Cloud Functions
  • Database Triggers with Firebase Cloud Functions
  • REST endpoints with Firebase Cloud Functions
Course content
Expand all 63 lectures 07:10:58
+ Introduction to the Firestore NoSQL Database
5 lectures 32:53
The Firestore NoSQL Database - Documents and Collections
05:54
Firestore Root Collections vs Nested Collections
05:47
Querying Firestore Documents using the Firebase SDK
11:07
Understanding Firestore Auto-generated Document Identifiers
04:25
Querying Firestore Collections using the Firebase SDK
05:40
+ Angular Service Layers with AngularFire
18 lectures 02:18:39
Setting Up AngularFire
03:57
Querying a Firestore Collection using AngularFire
05:30
The AngularFire API - snapshotChanges vs stateChanges
08:47
Querying and Displaying Data with AngularFire - The Home Component
06:04
AngularFire Observable Streams - An Important Feature
06:58
Firestore Queries and Performance Guarantees - orderBy and array-contains
08:38
Firestore Compound Queries - Understanding Firestore Indexes
08:57
Understanding Firestore Querying Constraints and Invalid Query Error Messages
09:25
The Course Component - Design Overview
05:56
Initial Implementation of the Course Screen - the Course Resolver
09:12
Course Component Lessons List - Querying a Nested Firestore Collection
08:06
Course Component Conclusion - Pagination and Loading Indicator
05:33
Firestore Data Modification Example - The Edit Course Dialog
07:58
Edit Dialog Component Implementation - Conclusion
07:53
Firebase SDK Offline Support - See it in Action
06:59
Understanding Firestore Batched Writes - An Example
07:32
Firestore Transactions - Transactions vs Batched Writes
13:00
Firestore Persistent Document References - An Example
08:14
+ Firebase Authentication
5 lectures 32:22
Firebase Authentication - Section Introduction
04:05
Firebase UI In Action - Social Login plus Email and Password Authentication
08:16
Authentication with Firebase UI - Implementation Conclusion
08:08
The AngularFire Auth User Profile - a Practical Use Case
07:25
AngularFire Auth Service - Displaying a User Profile Picture
04:28
+ Firestore Security Rules Deep Dive
11 lectures 01:07:55
Security in a Serverless Architecture - Introduction to Firestore Security Rules
05:47
Breaking Down the Firestore Security Rules Syntax
05:44
Security Rules Fundamentals - How do Security Rules Work?
08:56
Security Rules Fundamentals - Nested Rules and WildCards
07:11
Security Rules - Making Data Visible Only to Authenticated Users
04:23
Firebase Security Functions - an Example
04:31
Authentication with a Pre-Approved User List
07:45
User Authorization Roles - Admin Users vs Normal Users
04:21
Adding a Schema to Firestore Data using Security Rules
07:30
The Difference Between the Request and the Resource objects in Security Rules
05:58
Installing the Firebase Tools - Firestore Command Line Deployment
05:49
+ Firebase Hosting
1 lecture 09:43
Firebase Hosting - Benefits & Quick Deployment Guide
09:43
+ Firebase Storage Deep Dive (File Upload)
5 lectures 29:58
What is Firebase Storage? Learn its Key Features
06:05
File Upload with AngularFire - Step by Step Implementation
07:20
Implementing a File Upload Percentage Indicator with Angular Material
04:08
Get a Firebase Storage Revocable Download Url
05:26
Firebase Storage Security Rules - File Upload Conclusion
06:59
+ Firebase Cloud Functions Deep Dive
10 lectures 01:22:38
Firebase Cloud Functions - Hello World
09:01
Firebase Cloud Function REST Endpoint with Express
08:41
Firebase Cloud Functions Local Emulator and Production Deployment
06:47
Implementing a Firestore Database Trigger with Firebase Cloud Functions
13:14
Firebase Cloud Functions - Automatic Document Counter Implementation
05:52
Firebase Cloud Functions - Implementing a File Upload Trigger
07:38
Download a File from Firebase Storage from inside a Firebase Cloud Function
05:58
Image Processing with ImageMagick from inside a Firebase Cloud Function
08:54
Image Processing of Thumbnail with Firebase Cloud Functions - Implementation
07:35
Image Processing with Firebase Cloud Functions - Demo
08:58
+ Conclusion & Bonus
3 lectures 12:49
Other Courses
02:17
Bonus Lecture
01:28
Conclusions and Key Takeaways
09:04
Requirements
  • Just a little bit of Angular and Typescript
Description

If you are looking for the best backend to go along with Angular, or even better if you are looking to do as little server-side development as possible and focus mostly on the frontend, then look no further: Firebase is the right choice for you.

With Firebase, you will be able to query your database directly from the client and even directly modify data straight from the client in a secure way. You might not think that this would even be possible and that there always has to be a server involved in order for things to be secure, and that is true.

But that does not mean that you have to write the server yourself, and that is the whole point of the term Serverless. With Firebase you can write essentially serverless applications, in the sense that in the application code base there is hardly any server-side code at all when compared to a traditional REST-based application.

In this course, you are going to learn how to design and build Angular applications using a Serverless Architecture by leveraging the whole Firebase ecosystem: this includes the Firestore NoSQL DataStore database, Firebase Security Rules, Firebase Hosting, Firebase Storage and Firebase Cloud Functions.

Course Overview

This course will allow you to learn Firebase and NoSQL in a fun and practical way, as you build an application using the Firebase SDK and AngularFire. As we build the application, we will also discuss the main concepts of serverless design.

More than querying the database and displaying the data on the screen, we are going to make the application secure using Firebase Security Rules and Firebase Authentication, and we are even going to deploy it to production using Firebase Hosting.

This will all be done without writing a single line of server code! We are then going to implement a complete example of file upload using Firebase Storage, again all in a secure way and without a single line of server code.

But what if the image needs some resizing? This is better done on the server so we will implement a Firebase Cloud Function that does some image processing upon upload completion. We are also going to demonstrate how Firebase Cloud functions can be used to keep multiple parts of our database in sync using server-side trigger functions.

We are then going to talk about denormalization best practices that will help us design the database to allow multiple views of the same data.

The result is a highly maintainable real-time application with huge scalability, performance and security, written with hardly any server code at all.

Table of Contents

This course will go over the following topics:

  • Introduction to NoSQL data modeling

  • Documents vs Collections

  • Firestore Unique Identifiers

  • Querying a database using the Firebase SDK

  • Angular Service Layer Design with AngularFire

  • Offline support

  • Pagination

  • Indexes, Composite Indexes

  • Data Modification with AngularFire

  • Transactions

  • Multi-path Updates

  • Authentication with Firebase Authentication

  • Securing Database access with Firebase Security Rules

  • Production Deployment with Firebase Hosting

  • Image file upload with Firebase Storage

  • Firebase Storage Rules

  • Server-side image processing with Firebase Cloud Functions

  • Denormalization is normal - supporting multiple data views

  • Firebase Could Functions HTTP endpoints

What Will You Learn In this Course?

After taking this course, you will feel comfortable designing and using a NoSql database for your application using Firestore. More than that, you will be familiar with the overall concept of a Serverless Architecture, and you feel comfortable with the whole Firebase ecosystem.

You will be proficient in the complete Firebase ecosystem, which includes: Firestore, AngularFire, Firebase Security Rules, Firebase Storage & Firebase Cloud Functions. But most of all, you will know how to use these building blocks to design and implement a Serverless Architecture in your application.

Who this course is for:
  • Angular Developers looking for the best possible backend to go along with Angular