Flutter app development tutorials by Andrea Bizzotto

Flutter & Firebase: Reference Authentication Demo

Today I'm sharing a new open source project, showing how to implement a full authentication flow with Flutter & Firebase:

I created this as a follow up from my YouTube series on Flutter & Firebase authentication.

This is also a complement to my Flutter & Firebase course.

This project shows how to:

  • use the various Firebase sign-in methods
  • build a robust authentication flow
  • use appropriate state management techniques to separate UI, logic and Firebase authentication code
  • handle errors and present user-friendly error messages
  • write production-ready code following best practices


Google Sign-in

Facebook Sign-in

Email & Password auth

Note that this is a reference implementation. You can use it to add Firebase authentication to your own projects.

The code is very modular, so you can pick & choose which parts you need.

It is also meant to be a good testing ground for various state management techniques.

What's next

In follow-up articles I will show how to implement existing flows in this app with different state management techniques.

This will lead to a detailed comparison of BLoCs, ValueNotifier and ChangeNotifier, on a real-world codebase that you could use in production.

I'll keep it short for today. You can grab the source code here:

By the way, a lot of the techniques used in this project are explained in great detail, and implemented step-by-step in my Flutter & Firebase course.

Happy Coding!

Want more?

Support my work and fast-track your Flutter learning with my in-depth courses.