Building Mobile Apps with Flutter, Firebase, and Provider Online Course
Building Mobile Apps with Flutter, Firebase, and Provider Online Course
Unlike beginner courses that only cover individual parts, this course teaches you how to bring everything together to build a real-world Flutter app. Starting with Flutter and Dart fundamentals, you’ll recreate the full layout of the iOS Reminders app, learning navigation, screen transitions, and data handling with Dart classes. You’ll integrate Firebase for email authentication and real-time data with Firestore, implement light and dark themes, and manage app state using the Provider package. By the end, you’ll have practical experience in building a complete, functional application.
Who should take this course?
This course is ideal for developers, students, and tech enthusiasts who want to build scalable, real-time mobile applications using Flutter. It’s well-suited for those interested in integrating Firebase for backend services and Provider for state management. Whether you’re a beginner looking to gain hands-on experience in mobile development or an experienced developer aiming to enhance your skills with modern frameworks, this course equips you to create robust, cross-platform apps efficiently.
What you will learn
- The complete basics of Flutter and Dart to build a solid foundation
- Build out the complete layout of the app - the iOS reminders app
- Add email authentication to the app using Firebase Auth
- Use the Firebase Firestore as a real-time database for our app
- Manage app-wide state using the Provider Package
- Create a custom light and dark theme for the app
Course Outline
Introduction
- What is Flutter?
- How to Use Project Files
- Installing Flutter
Basics
- Project Structure
- First Stateless Widget
- Material App
- Override and BuildContext
- Why Use Material App and Scaffold?
IOS Reminders App - Flutter Basics
- Introduction to iOS Reminders
- Adding a Navigator
- App Bar Button and Theme
- Dark Theme
- Columns
- Rows and Flutter Inspector
- Expanded Widget
- Footer Buttons and Padding
- GridView.count
- Box Decoration and Colors
- Classes and Constructors
- Display Categories
- Nullable and Non-Nullable Variables
- Final and Const
- Reusable Category Widget
- Refactoring Our App
Making App Stateful
- Stateful Widget
- ListView - Setting Up a List
- Styling List Item Using ListTile
- Reordering the List
- Category Class - UnmodifiableListView
- Show Hide List - Toggle Checkbox
- Animated ListView and GridView
Adding a List
- AddList Modal
- Add Selected Icon
- Theme.of(context) and Form Field
- CustomColor Model
- CustomColorCollection Model and Wrapper Widget
- CustomIcon Model
- Select Icon and Color
- Retrieve Text from TextField - TextEditingController
- Refactoring Our Theme
- Bugfix - Scrollable AddListScreen
App State Management
- Add Reminder Screen
- Select List and Category ListTile
- AddReminder Text Controllers
- Lifting State Up
- State Management - Provider Package Overview
- Setting Up the Provider
- Add a TodoList - ChangeNotifier Provider
- Swipe to Delete
- Bugfix: Home Screen Scroll Fix
Authenticate User - Firebase and Async Concepts
- Setting Up Firebase
- iOS Installation
- Android Installation
- Common Firebase Errors
- Initialize Firebase - Dart Futures
- Async and Await
- FutureBuilder Widget
- Authenticate Screen
- Form – Sign-In and Sign-Up Screen
- App Icon - Lottie
- Cleaning Up Auth UI
- AuthService Class - Sign Up User
- AuthService Class - Sign-In User
- Keep User Logged In
- StreamBuilder Widget
- StreamProvider
Add Data to Backend - Firebase Firestore
- Firebase Cloud Firestore
- Add TodoList to Database
- NamedConstructors - TodoList
- Retrieve TodoList from Database
- Delete TodoList from Database
- Reminder Model Class
- Select List for Reminder
- Select Category for Reminder
- Select Date and Time for Reminder
- Add Reminder to Database
- Multiprovider - Using More Than One Provider.
- Display Reminder Count
- Inkwell - View Reminder by Category
- View Reminder from My Lists
- Display Reminder Details
- Delete TodoList
- Delete Reminder
- DatabaseService Class - Refactor Streams and AddTodoList
- DatabaseService - Delete TodoList
- DatabaseService - Delete Reminder
Wrapping Up
- Select Light or Dark Theme for App
No reviews yet. Be the first to review!