
Explore how to manage state efficiently in Flutter apps using the provider package, including creating, providing, and consuming state with change notifier for reactive, scalable UI.
Explore how Flutter and Firebase work together to build scalable, cross platform mobile apps using a single codebase, including authentication, real-time database, cloud messaging, and analytics.
Set up a new Flutter project in Visual Studio Code, connect it to Firebase, install and configure the Firebase CLI, and initialize authentication, database, and cloud storage features.
Set up Flutter on Windows by downloading, installing, and configuring environment variables, then verify with flutter doctor to start building Flutter apps for mobile, web, or desktop.
Explore the flutter project structure, organize lib, assets, and platform directories, and manage dependencies in pubspec.yaml to build scalable, maintainable mobile apps.
Explore stateless and stateful widgets in flutter with practical examples. Learn how setState updates a counter, compare their performance, and decide when to use each for efficient app development.
Master the Flutter text widget to display and style text with color, size, weight, and decorations, while using scaffold and safe area to control overflow with max lines and ellipsis.
Master Flutter's expanded widget to create responsive layouts by dynamically distributing space in rows and columns, preventing overflow. Explore flex and flags to control space allocation in Flutter interfaces.
Master circular avatar, sized box, and divider in Flutter to create clean, structured layouts with customizable radius, background color, and images from network or assets.
Master the text form field widget in Flutter to capture user input in forms and login screens, using a controller and decorations like labels, borders, hints, icons, and keyboard type.
Demonstrates how the stack widget layers widgets from bottom to top, adjusts alignment, and creates dynamic, layered UI in Flutter using containers and text.
Learn to use the ListTile widget in Flutter to build structured list items with a title, subtitle, leading icon or avatar, trailing actions, and on-tap navigation.
Explore the ListView Builder in Flutter to dynamically generate list items with on-demand rendering for smooth scrolling and memory-efficient performance.
Organize images in an assets folder for a Flutter project, declare the assets in the YAML file, and display them in the user interface using image.asset with correct paths.
Build a user-friendly sign-in form in Flutter with email and password fields, input decoration, and text editing controllers; add a password visibility toggle and a Google sign-in button.
Build a sign in to sign up flow in Flutter by tapping the sign up text with a gesture detector and using Navigator.push and remove until the sign up screen.
Set up Firebase authentication for email and password signup and build a reusable sign-up function. Handle errors like weak passwords or existing accounts with friendly feedback and UI integration.
Learn to implement Firebase sign-in using Firebase Authentication, connecting email and password sign-in to the sign-in screen, handling errors and securely authenticating users, and navigating to the home screen.
Add a loader on sign up and sign in screens to provide visual feedback during authentication using a boolean loader, a circular orange progress indicator, and hide password text.
Learn to implement Google sign in with Firebase authentication in a Flutter app, configure Firebase, add Google sign in, and test the full authentication flow.
Create a fully functional forget password screen with email-based reset using Firebase Authentication, including input validation, snackbar feedback, and loading states for a smooth user experience.
Build a Flutter poll app home screen with three tabs in a tab bar navigation and a floating action button to create polls with a single tap.
Extend the poll screen by adding image selection with an image picker from the gallery, display selected images in rounded containers, and handle image paths for a smooth user experience.
Develop a poll submission flow by adding an elevated button, validating inputs, uploading option images to Firebase Storage, and storing poll data in Cloud Firestore with the current user ID.
Fix image validation on the create poll screen, implement folder-based image storage and robust upload logic, and ensure the poll submission only proceeds after images are selected.
build a dynamic flutter home screen with firebase, showing a poll card for the current user and an all posts tab for polls by others.
Build the edit poll screen with Firebase by adding edit and delete buttons, passing poll data between screens, and updating the poll title, options, and images.
Implement delete functionality for polls in Flutter with Firebase, removing poll documents and related images from Firestore and Storage, and displaying user feedback on success or error.
Implement vote handling for polls with Firebase updates, prevent double voting, and display a personalized voted polls section to show which polls each user has voted on.
Launch a Flutter app with a splash screen, Firebase login, and navigation based on authentication. Create polls with image uploads and enforce one vote per user.
Explore state management for real-time data with the provider package in flutter. Learn how provider simplifies sharing state, enables reactive updates, and keeps UI separate from business logic.
Use the provider package to manage state in Flutter apps, using a change notifier and notify listeners to rebuild only the affected widgets via the consumer, improving performance over setState.
Replace setState with provider for efficient state management and use the consumer widget to update only needed UI, boosting performance and cleaner, scalable app behavior.
Learn how to integrate Firebase Cloud Messaging (FCM) into a Flutter app, set up foreground and background notification handling, manage device tokens, and test with a sample message.
Explore Firebase Cloud Messaging in Flutter, covering setup, token management, and message handling across terminated, background, and foreground states, plus displaying notifications with local notifications.
Configure flutter app icons for Android and iOS using an app icon generator, update the display name, and build a release apk for Play Store packaging and publishing.
Set up sqflite in Flutter by creating a singleton database helper, initialize the local database, and define tables for polls and options to store data offline with proper relational constraints.
Learn to auto sync offline polls to Firebase when the internet returns, using a local database and shared preferences to track posting status and ensure reliable offline-to-online updates.
Sync offline polls by fetching local options and converting them to Firebase options with names and image URLs, then push to Firebase when online, tracking status with shared preferences.
Learn how to auto sync updated data from a SQL database to Firebase when online, using shared preferences to track sync stages and manage poll options with image URLs.
Delete SQLite records and sync deletions with Firebase, enabling offline handling and automatic post deletions when the user comes back online.
Set up google maps in flutter by configuring the google cloud console and creating an api key. Add android and ios permissions, dependencies, and enable maps sdk, geocoding, places API.
Learn to display Google Maps in Flutter, add location permissions and markers, interact via tap to move the camera, and implement a choose location flow.
Implement a locate me feature using the Geolocator package to fetch current position, update the map with a marker and camera, and save lat/long to Firebase to show location-based polls.
Use real time location data to dynamically display polls near the user within a five kilometres distance for proximity, and accurately calculate distance with Geolocator and Firebase integration.
Download, install, and configure GitHub Desktop, sign in, and complete the initial setup to manage your Flutter and Firebase project workflows efficiently.
Clone a repository with GitHub Desktop from GitHub, create and publish new branches to the remote, and view commit history to track changes.
Merge branches in GitHub Desktop, push updates to the remote repository, and revert unwanted changes with discard changes in VS Code to keep projects aligned.
Add a featured button to the post user interface to boost visibility and enable future PayPal micropayments, using a show feature button flag to control rendering.
Learn to integrate PayPal into a Flutter app and manage deep links for navigation, configuring Android manifest metadata, iOS Info.plist, and a payment services class for PayPal success and cancellation.
Add a PayPal payment sheet to enable users to feature ports, using sandbox mode, client id, secret key, return and cancel URLs, USD transactions, and error handling.
Learn to update poll status in Firebase after PayPal payment confirmation and prioritize featured polls by placing them on top for ten days, with a star indicator and snackbar.
Auto-unfeature polls after a predefined duration by validating expiration timestamps and updating Firestore fields, ensuring only non-expired polls remain featured.
Set up Firebase cloud functions for Stripe subscription payments, initialize the project, write and test local functions in JavaScript, and expose HTTP endpoints for testing.
Publish Stripe cloud functions and securely fetch subscription options from the backend in a Flutter project. Test locally with Firebase serve by retrieving monthly and yearly prices.
Publish cloud functions to create customers, update and retrieve subscriptions, and add card details. Test locally on localhost and expose endpoints for prices, add card, subscribe, and retrieve subscriptions.
Deploy Stripe cloud functions to Firebase and test production live events, enabling secure, scalable subscription management and payment processing integrated with Firebase.
Set up stripe in your Flutter app, configure a settings screen to manage subscriptions with a publishable key, and implement a plan-based flow with dynamic pricing from a backend endpoint.
Implement a Stripe details screen with a secure in-app payment dialog, and use text editing controllers for card number, expiry, CVC, and name to collect card details.
Generate a Stripe customer id after card creation and store it in Firebase for reliable payments; retrieve the id for transactions using the price id.
Learn to securely create subscriptions via a backend endpoint, implement robust error handling, and manage Stripe customer IDs and price IDs for reliable payments.
Store and manage user subscription data in Firebase after a successful subscription by saving the subscription id to the Firestore users collection and retrieving it for your endpoints.
Implement a free-tier restriction limiting poll creation to three polls and prompt upgrades for extended features, using backend subscription data to gate actions and guide users toward premium plans.
Are you ready to build real-world mobile apps using Flutter and Firebase? This course will take you from the basics of Flutter and Dart to developing full-featured, cross-platform applications without the need for server-side coding. You’ll learn how to create beautiful, responsive user interfaces, implement secure authentication with email/password and Google sign-in, and manage real-time data using Firestore. The course also covers state management with Provider, file uploads with Firebase Storage, and automating backend tasks with Cloud Functions. You’ll dive into push notifications (FCM), Firebase Analytics, and Remote Config to optimize app performance and enhance user experience.
But that's not all! You'll also explore best practices for structuring Flutter projects, optimizing performance, and debugging common issues. Understanding how to efficiently manage app state and handle real-time updates will give you the confidence to build scalable applications. We will also cover deep linking with Firebase Dynamic Links, enabling seamless navigation across platforms, and show you how to implement A/B testing with Remote Config to fine-tune user experiences.
By the end of this course, you’ll have the skills to build and deploy a complete social media app, applying everything you’ve learned, from authentication and data management to notifications and analytics. This hands-on course is designed for both beginners and experienced developers looking to level up their Flutter skills. Whether you want to create your own startup app or advance your career as a mobile developer, this course will equip you with the necessary tools and knowledge.
So, what are you waiting for? Enroll now and start building powerful mobile apps with Flutter and Firebase today!