Choose your language
Flutter with Firebase Course
More than 2 million students worldwide

Flutter with Firebase Course

Build full-stack mobile apps by combining Flutter's powerful UI framework with Firebase's backend services. This course takes you from environment setup to production deployment, covering authentication, Firestore, cloud storage, and push notifications. Every concept is applied through hands-on code, so you leave with a real, shippable app.

Dedika for businesses

What you will learn:

You will learn to build complete Flutter apps backed by Firebase, starting with Dart fundamentals and the Flutter widget system. You will implement secure authentication flows, model and query Firestore databases, and handle file uploads with Firebase Storage. The course covers state management with Provider and Riverpod, Firestore security rules, and Cloud Functions. You will also integrate Firebase Analytics, Crashlytics, and push notifications. By the end, you will know how to write automated tests, apply clean architecture patterns, and deploy your app to the App Store and Google Play.

How you study in practice Flutter with Firebase Course

How you practice Flutter with Firebase Course

For companies that want to train their team

With Dedika for Business, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 38 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Flutter and Firebase Foundations

  • Lesson 1 • Flutter Project Structure Overview

    Examine the anatomy of a Flutter project: folders, entry points, and pubspec.yaml. Understanding this structure prevents configuration errors throughout the course.

  • Lesson 2 • Introduction to Firebase Services

    Survey Firebase products—Auth, Firestore, Storage, and Hosting—and their roles. This overview frames which service solves which problem in later chapters.

  • Lesson 3 • Dart Language Essentials for Flutter

    Cover Dart syntax, null safety, and async patterns required to write Flutter apps. These language fundamentals underpin every widget and Firebase call ahead.

  • Lesson 4 • Connecting Flutter to Firebase

    Add Firebase to a Flutter project using FlutterFire CLI and platform config files. A verified connection here is the prerequisite for all Firebase feature chapters.

  • Lesson 5 • Setting Up the Development Environment

    Install Flutter SDK, Dart, Android Studio, and VS Code extensions. This baseline setup enables every subsequent coding exercise in the course.

Chapter 2See details

Flutter Widget System Mastery

  • Lesson 1 • Forms and User Input

    Build validated forms using TextFormField, Form widget, and GlobalKey. Form handling is directly reused in the Firebase Authentication chapter.

  • Lesson 2 • Stateless and Stateful Widgets

    Distinguish when to use StatelessWidget vs. StatefulWidget and manage local state with setState. This choice drives UI reactivity in every screen built later.

  • Lesson 3 • Navigation and Routing

    Implement named routes and Navigator 2.0 for multi-screen apps. Proper navigation architecture supports auth flows and deep linking introduced in later chapters.

  • Lesson 4 • Core Layout Widgets

    Use Column, Row, Stack, Container, and Expanded to compose screens. Mastering layout widgets is essential before building Firebase-driven list and form UIs.

  • Lesson 5 • Lists, Grids, and Scroll Views

    Render dynamic data with ListView.builder, GridView, and CustomScrollView. These patterns are the foundation for displaying Firestore query results.

Chapter 3See details

Firebase Authentication

  • Lesson 1 • Auth-Driven Navigation and Guards

    Redirect users based on auth state using StreamBuilder and route guards. Protecting screens from unauthenticated access is a critical production requirement.

  • Lesson 2 • Firebase Auth Core Concepts

    Understand the FirebaseAuth instance, User object, and auth state stream. These concepts are the backbone of every sign-in method covered in this chapter.

  • Lesson 3 • Email and Password Authentication

    Build sign-up, sign-in, and password-reset screens using Firebase email/password auth. This is the most common auth method and the template for other providers.

  • Lesson 4 • Google and Social Sign-In

    Integrate Google Sign-In using the google_sign_in package and Firebase credential linking. Social auth reduces friction and is required for many production apps.

  • Lesson 5 • Anonymous Authentication and Upgrades

    Sign users in anonymously and upgrade to permanent accounts without data loss. This pattern improves onboarding conversion in real-world apps.

Chapter 4See details

Cloud Firestore Data Modeling

  • Lesson 1 • Querying and Filtering Data

    Filter, sort, and paginate Firestore data using where(), orderBy(), and startAfterDocument(). Efficient queries reduce reads and lower Firebase costs.

  • Lesson 2 • CRUD Operations in Flutter

    Add, read, update, and delete documents using the cloud_firestore package. These operations are the building blocks of every data-driven feature.

  • Lesson 3 • Firestore Data Model Fundamentals

    Understand collections, documents, subcollections, and data types in Firestore. A correct mental model prevents costly schema redesigns later in the project.

  • Lesson 4 • Data Modeling Best Practices

    Apply denormalization, fan-out writes, and aggregation patterns to Firestore schemas. These patterns ensure performance at scale and minimize read costs.

  • Lesson 5 • Real-Time Streams and Snapshots

    Subscribe to live data using snapshots() and StreamBuilder in Flutter. Real-time updates are Firestore's core advantage over traditional REST APIs.

Chapter 5See details

Firebase Storage and Media Handling

  • Lesson 1 • Storage Security Rules

    Write Storage security rules to restrict file access by user identity and path. Proper rules prevent data breaches and are required before production deployment.

  • Lesson 2 • Downloading and Displaying Files

    Retrieve download URLs and display images using cached_network_image. Efficient display patterns prevent redundant network calls and improve UX.

  • Lesson 3 • Firebase Storage Architecture

    Understand Storage buckets, reference paths, and security rules for files. This foundation prevents unauthorized access and misorganized file hierarchies.

  • Lesson 4 • Uploading Files from Flutter

    Pick files with image_picker and file_picker, then upload them using putFile() and putData(). Upload logic is reused in profile photo and document features.

Chapter 6See details

State Management with Provider and Riverpod

  • Lesson 1 • Testing State Management Logic

    Write unit tests for StateNotifiers and mock Firebase dependencies with ProviderContainer. Testable state logic reduces bugs and speeds up feature development.

  • Lesson 2 • Riverpod Core Concepts

    Define providers, StateNotifiers, and AsyncNotifiers using Riverpod 2.x syntax. Riverpod's compile-time safety and testability make it the preferred choice for production.

  • Lesson 3 • State Management Fundamentals

    Contrast setState, InheritedWidget, and third-party solutions to understand when each applies. This context justifies the architectural choices made throughout the chapter.

  • Lesson 4 • Integrating Firebase Streams with Riverpod

    Expose Firestore and Auth streams as StreamProviders consumed by Flutter widgets. This pattern decouples UI from Firebase and enables clean architecture.

  • Lesson 5 • Provider Package Deep Dive

    Use ChangeNotifier, ChangeNotifierProvider, and Consumer to share state across widgets. Provider is the entry-level solution and a stepping stone to Riverpod.

Chapter 7See details

Firestore Security Rules and Data Integrity

  • Lesson 1 • Authentication-Based Access Control

    Restrict document access using request.auth and user UID comparisons. These patterns implement per-user data isolation in multi-tenant apps.

  • Lesson 2 • Security Rules Fundamentals

    Learn rules syntax, match statements, and allow conditions for Firestore. Understanding the rules engine is mandatory before writing any production rule.

  • Lesson 3 • Data Validation in Rules

    Validate incoming data types, required fields, and value ranges inside rules. Server-side validation prevents malformed data even when client code is bypassed.

  • Lesson 4 • Testing and Deploying Rules

    Use the Firebase Emulator Suite and Rules Playground to test rules before deployment. Automated rule tests catch regressions and reduce production security incidents.

Chapter 8See details

Advanced Firebase Features and Deployment

  • Lesson 1 • Push Notifications with FCM

    Send targeted and topic-based push notifications using Firebase Cloud Messaging. Notifications drive re-engagement and are required in most consumer apps.

  • Lesson 2 • Building and Deploying the App

    Configure release builds, signing, and CI/CD pipelines for Android and iOS. A repeatable deployment process is the final step before reaching real users.

  • Lesson 3 • Remote Config and A/B Testing

    Serve dynamic app configuration and run experiments using Firebase Remote Config. Feature flags and A/B tests enable safe rollouts without app store updates.

  • Lesson 4 • Firebase Analytics and Crashlytics

    Log custom events with Firebase Analytics and capture crashes with Crashlytics. Observability data drives product decisions and reduces mean time to resolution.

  • Lesson 5 • Cloud Functions for Firebase

    Write and deploy HTTP and Firestore-triggered Cloud Functions using Node.js. Functions handle server-side logic that must not run on the client device.

Certification

Your valid completion certificate

This course is for you:

  • Web developers curious about building native mobile apps with Flutter.

  • Computer science students wanting real-world backend integration experience.

  • Freelancers looking to expand their service offerings into mobile development.

  • Startup founders who want to prototype and ship their own mobile product.

  • Backend developers ready to branch into cross-platform front-end development.

What our students say

Your classes are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of my interest without needing to switch platforms... I thank you for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can switch chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the presentation style and video transcription, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top trainings

FAQ

Who is Dedika?

Is the certificate valid in the United States?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course