Top 8 Recommended Flutter Self-Study Materials! [October 2024]
This page introduces the best in educational materials for beginners who are trying to learn Flutter on their own.
Table of Contents:
1. Description of this page
We introduce 8 recommended video courses on various platforms for those who want to learn Flutter on their own.
What is Flutter?
"Flutter is a cross-platform development tool provided by Google that uses the Dart language. It allows developers to create apps that run on both iOS and Android using a single language. Due to its great development experience among cross-platform frameworks, more and more companies have been adopting Flutter for mobile development in recent years.
Our site, "Outlecture," evaluates courses using our proprietary algorithm that balances course rating, freshness of information, number of purchasers and viewers, and recent rate of increase, in order to extract only the most suitable courses for users.
In addition, we will explain the features of each video platform and provide use cases such as "this is better for people in this situation."
We hope this will be a reference for everyone who is going to learn Flutter.
2. Top 5 Recommended Udemy Courses
Here are Outlecture's top 5 recommended Udemy courses, carefully selected for you.
Title | Ratings | Subscribers | Subscribers last month (September 2024) | Level | Video Duration | Created | Last updated | Price |
---|---|---|---|---|---|---|---|---|
The Complete Flutter Development Bootcamp with Dart | 4.55 | 197,186 | 1,066 | all | 28 hours 18 minutes | Mar 7th, 2019 | Nov 1st, 2023 | $174.99 |
Flutter & Dart - The Complete Guide [2024 Edition] | 4.62 | 322,368 | 3,012 | all | 29 hours 50 minutes | May 22nd, 2018 | Aug 26th, 2024 | $129.99 |
Flutter , Nodejs, Express , MongoDB: Build Multi-Store App | 4.91 | 340 | - | all | 34 hours 25 minutes | May 26th, 2024 | Sep 30th, 2024 | $54.99 |
Flutter & Dart: SOLID Principles and Top Design Patterns | 4.51 | 4,458 | 76 | intermediate | 4 hours 1 minutes | Nov 12th, 2022 | Jan 27th, 2024 | $74.99 |
Flutter & Dart Essentials-Build Mobile Apps like a Pro | 4.57 | 1,636 | 51 | all | 43 hours 33 minutes | Aug 16th, 2023 | Apr 10th, 2024 | $89.99 |
Udemy, Inc. is an education technology company that provides the world's largest online learning and teaching platform.
The features of Udemy include:
- Over 155,000 course
- Instructors who are leading experts in their fields
- Affordable prices range from tens to hundreds of dollars per course, with discounts of up to 70-90% during campaigns
- Courses can be viewed without expiration after purchase, and come with a 30-day money-back guarantee
- Courses can be taken at the student's own pace, with playback speeds of 0.5 to 2 times normal speed, and can be viewed offline on a smartphone with a dedicated app
- Students can ask questions directly to the instructor on the course discussion board, allowing them to resolve any doubts and receive support for self-study
These are some of the benefits of using Udemy.
The management team at Outlecture consists of active software engineers, creators, and web designers. We often catch up on learning new programming languages and products by taking courses on Udemy.
As for our experience, we find that Udemy offers courses of very high quality. The instructors are all leading figures in their fields, and they teach cutting-edge knowledge and practical know-how in a clear and detailed manner. You can acquire the knowledge and skills that are actually used in the field and in practical projects, rather than just knowledge for exams.
We highly recommend Udemy courses, especially for those who want to apply what they learn in practical situations or for those who want to start self-studying. Once you purchase a course, you can take it without a time limit, and there is a 30-day money-back guarantee, so you can start learning with peace of mind.
Recommended for
- Planning to use Flutter in actual projects
- Wanting to learn the know-how of professionals who are active in the world's cutting-edge fields
- Hesitant to use a subscription service
- Having basic IT knowledge
The details of each course are as follows:
Officially created in collaboration with the Google Flutter team.
- Ratings
- 4.55
- Subscribers
- 197,186
- Subscribers last month
(September 2024) - 1,066
- Level
- all
- Video Duration
- 28 hours 18 minutes
- Created
- Mar 7th, 2019
- Last updated
- Nov 1st, 2023
- Price
- $174.99
Welcome to the Complete Flutter App Development Bootcamp with Dart - created in collaboration with the Google Flutter team.
Now includes a brand new module on Flutter State Management!
Covering all the fundamental concepts for Flutter development, this is the most comprehensive Flutter course available online.
We built this course over months, perfecting the curriculum together with the Flutter team to teach you Flutter from scratch and make you into a skilled Flutter developer with a strong portfolio of beautiful Flutter apps.
Our complete Flutter development bootcamp teaches you how to code using Dart and build beautiful, fast, native-quality iOS and Android apps. Even if you have ZERO programming experience.
I'll take you step-by-step through engaging and fun video tutorials and teach you everything you need to know to succeed as a Flutter developer.
The course includes 28+ hours of HD video tutorials and builds your programming knowledge while making real world apps. e.g. Whatsapp, QuizUp and Yahoo Weather.
By the end of this course, you will be fluently programming in Dart and be ready to build your own Flutter apps and become a fully fledged Flutter developer.
You'll also have a portfolio of over 15 apps that you can show off to any potential employer.
Sign up today, and look forwards to:
Over 28 hours of HD 1080p video content, everything you'll ever need to succeed as a Flutter developer.
Building over 15 fully-fledged apps including ones that use Firebase Cloud Firestore, StreamBuilder, ListView, networking, external APIs and much much more.
All the knowledge you need to start building any app you want
$8000+ Flutter development bootcamp course materials and curriculum
From Beginner to Flutter Developer with Just One Course
We know that you're here because you value your time. If you wanted to watch someone program for hours and hours without explaining what they're doing, you'd be on YouTube.
By getting this course, you can be rest assured that the course is carefully thought out and edited. There are beautiful animations that explain all the difficult concepts and we're always on hand to answer student questions.
So by the end of the course, you'll completely understand:
Fundamental Flutter concepts e.g. Stateful vs. Stateless Widgets, Widget tree, state management, animations, themes and much more.
Fundamental Dart concepts e.g. lists, maps, enums, loops, futures, streams, mixins, classes, and much more.
Concepts of Object Oriented Programming (OOP): The type system, variables, functions and methods, inheritance, classes and protocols.
Control Structures: Using If/Else clauses, Switch statements and logic to control the flow of execution.
Data Structures: How to work with collections, such as Lists and Maps.
Software Design: How to organise and format code for readability and how to implement the Model View Controller (MVC) design pattern.
Networking: How to make asynchronous API calls, store and retrieve data from the cloud, and use the JSON format for server communication.
Data Storage: How to use Firebase Cloud Firestore to act as a backend for your Flutter apps.
Authentication: How to use log in and register users for your Flutter apps.
State Management: How to use setState, prop drilling, lifting state up, callbacks and the Provider package to manage app state.
Don’t waste your time
Don't waste another minute of your precious life on poor quality videos on YouTube. Or instructors who you can't understand. Or teachers who have no real world in-person teaching experience. Your time is precious. Take this course and find out why everybody is raving about it and why over 35,000 students rated my courses 5 stars!
Don't waste your money
Inside this course, you're getting exactly the same course materials and curriculum as our 12 week in-person programming bootcamp. Instead of spending $8000+ dollars and taking time off work, save loads of money by getting this course and do it at your own pace!
Don't just take my word for it, see what my past students had to say about my courses:
"Angela is literally my favorite teacher. Ever. In the entire universe. She is hilarious and teaches in a lighthearted and fun way that is also very clear to understand. I instantly purchased this course as soon as I saw it was released because I know Angela delivers the highest quality educational content possible. 100% recommend this course (as well as every other course she's created). Thank you Angela for helping me as I make a career pivot into becoming a hybrid UX designer/mobile developer!" - Jacob Pernell
"Angela is my favorite Udemy professor for coding courses. Her methods for building onto the material so that you're never progressing too fast or too slow make for a really engaging learning experience. She's thorough in her explanations, and uses fun projects to discuss the material. I had started a couple other Flutter courses before finding this one, and I've progressed more in 24hrs than I did in a week with the other courses. Would love an advanced Flutter course from Angela to tackle once I'm done with this one!" - Jerome Llouche
"You will not find a better teacher than Angela. She does a wonderful job of encouraging you to learn swift the right way. I want to encourage everyone thinking about taking this class to get it, as it is the BEST programming class I've seen on anywhere and I've tried more than a few of them. If you are looking for an excellent swift programming course, stop there here because you have found it. You will learn Swift from the very beginning of programming all the way through making your own apps that you can upload to the App store." - Ian Hopjins
"SO GOOD!!! Retention rate is incredible because Angela does a great job in explaining and teaching every aspect of what we are doing. Most of the other instructors on Udemy put code on the screen and pretend nothing happened. This course is amazing! 5/5" - Muhammad Ibrahim
"Angela is a spectacular teacher!" - Marco Zanirato
"This course was terrific. Only after taking a few more courses from others that I realized how good this course was. This course taught me more than I was expecting, it provided great instructions and a lot of hands-on tasks to drill-in the concept." - Marc
"Best use of your money! I was a complete beginner but Angela made me a pro in weeks." - Burak Tunçbilek
"IT IS #1!!!!!!!!! Absolutely Amazing. The best iOS course i have ever taken. Angela explains everything the way it needs to be explained, so everything is easily understood. The concept of this course is built to make you learn, not just watch and repeat. Angela is highly educated and it is very much noticeable during the entire course. Again, it is fantastic. Thank you. Please create more courses!!!!!" - Eduard Khachian
Are you trying to choose between all the different Flutter courses on Udemy? Take a look at what students on my course had to say about this:
I have revamped my expectation for what a 5 star course should be for Udemy. Angela, you're awesome! I already rated the course as 5 stars early on (at about 20% completion), but after completing roughly 70% of the course, I can say this is my favourite Udemy course as of today. Brilliant course Angela! - Alberto L
"I took a lot of courses on Udemy and elsewhere and non of them were as clear and perfectly paced as this one! Angelas approach is really awesome, deep and clear." - Žan Fras
"I have taken several iOS courses, so far this course had the best explanation on swift and xcode documentation. The lecturer is kinda humorous sometimes which make this course even more enjoyable." - Bryan Pukanda
"I have taken lots of courses on udemy and elsewhere for self learning and i can tell you with all the honesty this is one course which i did not want it to end. It is like one of those movies that you wish keeps going. Whatever concepts are covered were covered very beautifully and made learning quite simple. I got so many answers to Why? in this course like how closures work and why they work that way... why delegates work that way. Thank you so much for this course." - Arun Lakhera
"I compare this to another top iOS class on Udemy, but I think that this one beats it. The reason? Angela doesn't show you a plethora of material and then say that we will discuss this later, or say "just do this. You will see why later." She goes into the reason for doing something before doing it." - Clyde Addison
REMEMBER… I'm so confident that you'll love this course that we're offering a FULL money back guarantee for 30 days! So it's a complete no-brainer, sign up today with ZERO risk and EVERYTHING to gain.
So what are you waiting for? Click the buy now button and join the world's best Flutter development course.
- Introduction to Cross-Platform Development with Flutter and Dart
- Introduction to the Course
- Download the Course Syllabus
- What is Flutter?
- Why Flutter?
- The Anatomy of a Flutter App
- How to Watch the Course in High Definition
- How to Get the Most Out of the Course
- Join the Student Community
- Setup and Installation
- Prerequisites for Flutter Development
- Overview of the Process
- Windows Setup Step 1 - Install the Flutter SDK
- Windows Setup Step 2 - Install Android Studio
- Windows Setup Step 3 - Install the Android Emulator
- Windows Installation Troubleshooting
- A Quick Note About macOS Catalina
- Mac Setup Step 1 - Install the Flutter SDK
- Mac Setup Step 2 - Install Android Studio
- Mac Setup Step 3 - Install the Android Emulator
- Mac Setup Step 4 - Install Xcode and Command Line Tools
- Mac Setup Step 5 - Test the iOS Simulator
- Mac Installation Troubleshooting
- [Optional] Configure Android Studio for Flutter Development
- [Optional] Guided Tour of Android Studio for Flutter Development
- I Am Rich - How to Create Flutter Apps From Scratch
- Creating a New Flutter Project from Scratch
- A quick note about Hot Reload
- Scaffolding a Flutter App
- Working with Assets in Flutter & the Pubspec file
- How to Add App Icons to the iOS and Android Apps
- How to Ace this Course
- Running Your App on a Physical Device
- Deploying Your Flutter Apps to a Physical Device
- Deploying Flutter Apps to an Android Phone
- Deploying Flutter Apps to iPhones/iPads
- Tip from Angela - Habit Building with the Calendar Trick
- I Am Poor - App Challenge
- What are App Challenges?
- The I Am Poor Challenge
- Show Off Your Work!
- Tip from Angela - Dealing with Distractions
- Do You Want This?
- MiCard - How to Build Beautiful UIs with Flutter Widgets
- MiCard - A Single Screen Personal Business Card App
- Hot Reload and Hot Restart - Flutter Power Tools
- How to Use Container Widgets
- How to use Column & Row Widgets for Layout
- Flutter Layouts Challenge
- Tapping into Widget Properties
- Incorporating Custom Fonts in Your Flutter App
- Adding Material Icons with the Icon Widget
- Flutter Card & ListTile Widgets
- Download the Completed Project
- Tip from Angela - Nothing Easy is Worth Doing!
- Dicee - Building Apps with State
- Dicee - A Stateful Dice App
- Using the Expanded Widget to Create Flexible Layouts
- How to Use Intention Actions
- Adding Gesture Detection with Flutter Button Widges
- [Dart] Functions - Part 1
- Making the Dice Image Change Reactively
- [Dart] Variables
- [Dart] Data Types
- Stateful vs. Stateless Widgets - What's the Difference?
- Randomising the Dice
- Challenge 1 Solution
- Challenge 2 Solution
- Challenge 3 Solution
- Download the Completed Project
- Tip from Angela - How to Deal with Procrastination
- Boss Level Challenge 1 - Magic 8 Ball
- Magic 8 Ball - A Decision Making App
- Step 1 - Set Up The Project
- Step 2 - Create a Stateless Widget
- Step 3 - Create a Stateful Widget
- Step 4 - Make it Interactive
- Step 5 - Randomise it
- Step 6 - Update the State
- Customise It!
- Tip from Angela - Building a Programming Habit
- Xylophone - Using Flutter and Dart Packages to Speed Up Development
- Xylophone - A Simple Musical Instrument App
- What are Flutter & Dart Packages?
- How to Play Sound Across Platforms
- How to Play Multiple Sounds
- [Dart] Functions - Part 2
- Updating the UI of Our App
- [Dart] Functions - Part 3
- [Dart] Functions Challenge
- Refactoring Our App
- [Dart] Arrow Functions
- Customise It!
- Download the Completed Project
- Tip from Angela - The 20 Minute Method
- Quizzler -Modularising & Organising Flutter Code
- Quizzler - A True/False Quiz App
- Building a Score Keeper
- [Dart] Lists
- Displaying the Questions
- Checking User Answers
- [Dart] Conditionals - IF/ELSE
- More Dart Programming Challenges
- Creating a Question Class
- [Dart] Classes and Objects
- Abstraction in Action
- Encapsulation in Action
- Inheritance in Action
- Polymorphism in Action
- Adding Back the Score Keeper
- Code Challenge
- [Dart] Class Constructors
- Download the Completed Project
- Tip from Angela - Learning Before you Eat
- Boss Level Challenge 2 - Destini
- Destini - A Choose Your Own Adventure Game
- Set Up the Project
- Familiarise Yourself with the Starting Project
- Step 1 - Adding a Image as a Background
- Solutions on GitHub
- Step 2/3/4 - Create a New Story Class
- Step 5/6/7 - Create the Story Brain
- Display the Story in the App
- Step 11/12/13/14 - Display the Choices in the App
- Update the Story Based on User Choice
- Step 21 - Use the Story Plan to Progress through the Story
- Step 22/23/24 - Restart the Game When the User Reaches the End
- Step 25 - Renaming and Refactoring Using Android Studio
- Step 26/27/28 - Hiding Buttons
- Download the Completed App!
- Tip from Angela - Retrieval is How You Learn
- BMI Calculator - Building Flutter UI for Intermediates
- BMI Calculator - A Beautiful Health App
- How to Use Flutter Themes
- How to Refactor Flutter Widgets
- [Dart] Final vs. Const
- Creating Custom Flutter Widgets
- The GestureDetector Widget
- [Dart] Enums
- [Dart] Ternary Operator
- [Dart] Functions as First Order Objects
- The Flutter Slider Widget
- Customising Widgets with Themes
- Composition vs. Inheritance - Building Flutter Widgets From Scratch
- Multi-Screen Apps Using Routes and Navigation
- [Dart] Maps
- Designing the Result Page
- Adding the BMI Calculator Functionality
- Download the Completed Project
- Tip from Angela - Dealing with Lack of Progress
- Clima - Powering Your Flutter App with Live Web Data
- Clima - A Modern Weather App
- Getting Location Data From Across Platforms
- [Dart] Futures, Async & Await
- Stateful Widget Lifecycle Methods
- [Dart] Exception Handling & Null Aware Operators
- Async/Await Challenge
- Application Programming Interfaces (APIs) Explained
- Networking in Flutter Apps with the HTTP Package
- JSON Parsing and Dynamic Types
- Getting Actual Weather Data from the OpenWeatherMap API
- Showing a Spinner While the User Waits
- Passing Data to a State Object
- Updating the Weather with the WeatherModel
- Refactoring the Location Methods
- Creating and Styling a TextField Widget for Text Entry
- Passing Data Backwards Through the Navigation Stack
- Download the Completed Project
- Tip from Angela - Mixing Knowledge
- Boss Level Challenge 3 - Bitcoin Ticker
- Bitcoin Ticker - A Simple Cryptocurrency Price Tracker
- The Material DropdownButton Widget
- [Dart] Loops
- Building Widgets with Loops Solution
- Introducing Cupertino Widgets
- Building Platform Specific UI (iOS & Android)
- Introduction to Boss Level Challenge 3
- Level 1 - Bronze Medal
- Level 2 - Silver Medal
- Level 3 - Gold Medal
- Check out the completed app!
- Tip from Angela - Dealing with Frustration
- Flash Chat - Flutter x Firebase Cloud Firestore
- Flash Chat - A Lightning Fast Messaging App
- Named Routes Challenge
- [Dart] Static Modifier
- Refactor Routes with the Static Const
- Flutter Hero Animations
- Custom Flutter Animations with the Animation Controller
- [Dart] Mixins
- Prepackaged Flutter Animations
- Code Refactoring Challenge
- Creating a New Firebase Project
- Potential Problems When Incorporating Firebase
- Android Firebase Project Setup
- iOS Firebase Project Setup
- Firebase Flutter Packages Setup (iOS & Android)
- Registering Users with Firebase using FirebaseAuth
- Authenticating Users with FirebaseAuth
- Showing a Spinner while the User Waits
A Complete Guide to the Flutter SDK & Flutter Framework for building native iOS and Android apps
- Ratings
- 4.62
- Subscribers
- 322,368
- Subscribers last month
(September 2024) - 3,012
- Level
- all
- Video Duration
- 29 hours 50 minutes
- Created
- May 22nd, 2018
- Last updated
- Aug 26th, 2024
- Price
- $129.99
May 2023: This course was completely updated (re-recorded from the ground up) and is now better than ever!
-
Discover the power of Flutter and Dart to create stunning, high-performance mobile apps for iOS and Android with the most comprehensive and bestselling Flutter course! With over 30 hours of comprehensive content, this course is the ultimate resource for anyone who wants to build beautiful, responsive, and feature-rich applications from scratch.
Learn from a Bestselling Udemy Instructor: Maximilian Schwarzmüller
I'm Maximilian Schwarzmüller, a bestselling, top-rated online course instructor with a vast variety of courses on web and mobile development. I'm excited to be your guide throughout this journey. My goal with this course is to teach you Flutter from the ground up, step-by-step and in a highly practice-oriented way!
Unlock Your Potential in Mobile App Development
This Flutter & Dart course is designed for absolute beginners with no prior programming experience, as well as for those with existing iOS, Android or other development skills. Through video lessons and hands-on projects, you'll learn the ins and outs of Flutter and Dart!
Throughout the course you'll build multiple demo apps - ranging from simple to more complex - and, by the end of the course, you'll be able to build your own iOS and Android apps with Flutter.
Why Choose Flutter?
Developed by Google, Flutter is a framework that allows you to learn one language (Dart) and build beautiful native mobile apps in no time
Write code only once and ship your apps both to the Apple App Store and Google Play
Use the rich widget suite Flutter provides to add common UI elements or build your own custom widgets
What You'll Learn:
Detailed setup instructions for both macOS and Windows
A thorough introduction to Flutter, Dart, and the concept behind widgets
An overview of the built-in widgets and how to add your own
Debugging tips & tricks
Page navigation with tabs, side drawers, and stack-based navigation
State management solutions
Handling and validating user input
Connecting your Flutter app to backend servers by sending HTTP requests
User authentication
Adding Google Maps
Using native device features like the camera
Adding beautiful animations & page transitions
Image upload
Push notifications - manual approach and automated
And much more!
Course Highlights:
On-Demand, Video-Based Learning: An immersive experience with practical examples and demo apps to help you develop your skills at your own pace
Lifetime Access: Revisit topics and refresh your knowledge anytime
Regularly Updated: The course has been updated multiple times in the past to ensure it stays up-to-date with the latest industry standards
No Experience Necessary
This course is designed to be accessible to everyone, regardless of their programming background. Whether you're a complete beginner or an experienced developer looking to expand your skillset, I will guide you through each step of the process, ensuring you gain a deep understanding of the fundamentals and advanced concepts.
Prerequisites:
Basic programming language knowledge will help but is not required
No prior knowledge of Flutter or Dart is needed
No iOS (Swift/ObjectiveC) or Android (Java/Kotlin) development experience required
Take the First Step Towards Your Mobile App Development Career
With the skyrocketing demand for skilled mobile app developers in today's job market, there has never been a better time to jump into the world of Flutter & Dart. By the end of this course, you'll be fully equipped to design, develop, and deploy stunning iOS and Android apps, setting yourself up for a successful career in mobile app development.
Don't let this opportunity pass you by! Enroll in "Flutter & Dart - The Complete Guide" today and start building amazing apps for the iOS and Android platforms!
- Introduction
- Welcome To This Course!
- What Is Flutter?
- Flutter uses Dart!
- One Codebase, Multiple Platforms
- Flutter Setup - Overview
- Windows Setup
- macOS Setup
- Project Creation & Setting Up a Code Editor for Flutter Development
- Course Setup
- Running a First Flutter App
- Understanding Material Design
- About This Course
- Course Resources (Code Snapshots, Community & Slides)
- Flutter & Dart Basics I - Getting a Solid Foundation [ROLL DICE APP]
- Module Introduction
- Analyzing A New Flutter Project
- From Dart To Machine Code
- How Programming Languages Work
- Starting From Scratch: Understanding Functions
- Importing Features From Packages
- How Flutter Apps Start
- Knowledge Check: Flutter & Dart Basics
- Understanding Widgets
- Using a First Widget & Passing Values to Functions
- Positional & Named Arguments
- Deep Dive: Position & Named Arguments
- Combining Multiple Widgets
- Understanding "const" Values
- Building More Complex Widget Trees
- Understanding Value Types
- Configuring Widgets & Understanding Objects
- Working with "Configuration Objects" (Non-Widget Objects)
- Generics, Lists & Adding Gradient Colors
- How To Configure Widgets & Objects
- Practice: Styling Text
- Onwards to Custom Widgets: Why Do You Need Them?
- Understanding Classes
- Building Custom Widgets
- Working with Constructor Functions
- Splitting Code Across Files
- Practice: Create a Custom Widget
- Introducing Variables
- Variables & Types - Combining Two Key Concepts
- "final" & "const" - Special Kinds Of "Variables"
- Instance Variables (Properties) & Configurable Widgets
- Practice: Reusable Widgets & Constructor Functions
- Displaying Images & Using Multiple Constructor Functions
- Adding Buttons & Using Functions As Values
- Styling Buttons & Working with Padding
- How NOT To Build Interactive Widgets
- Introducing Stateful Widgets
- Generating Random Numbers
- Module Summary
- Flutter & Dart Basics II - Fundamentals Deep Dive [QUIZ APP]
- Module Introduction
- A Challenge For You!
- Challenge Solution 1/2 - Creating a Widget
- Challenge Solution 2/2 - Working with More Widgets
- Adding Icons to Buttons
- Adding Transparency to Widgets
- Repetition & Exercise: Adding a Stateful Widget
- Rendering Content Conditionally
- Accepting & Passing Functions as Values
- The "initState" Method
- Deep Dive: Flutter's (Stateful) Widget Lifecycle
- Using Ternary Expressions & Comparison Operators
- Understanding "if" Statements
- Using "if" Statements In Lists
- if Statements & Comparison Operators
- Adding a Data Model & Dummy Data
- Configuring a Column
- Creating a Reusable, Custom Styled Button
- Accessing List Elements & Object Properties
- Mapping Lists & Using the Spread Operator
- Alignment, Margin & Padding
- Mutating Values in Memory
- Managing The Questions Index As State
- More on Button Styling
- Using Third-Party Packages & Adding Google Fonts
- Passing Data via Functions Across Widgets
- More Conditions
- Getting Started with the Results Screen
- Passing Data to the Results Screen
- Introducing Maps & "for" Loops
- Using "for" Loops In Lists
- Note: A Typo In The Next Lecture
- Accessing Map Values & Using "Type Casting"
- Combining Columns & Rows
- Expanded To The Rescue!
- Filtering & Analyzing Lists
- Making Content Scrollable with SingleChildScrollView
- Time to Practice: Flutter Basics
- Beyond the Basics: Optional, Important Dart Features
- Module Summary
- Debugging Flutter Apps
- Module Introduction
- The Starting Project & A Problem
- Understanding Error Messages
- Debugging Apps & Using "Debug Mode"
- Working with the Flutter DevTools
- Running the App on Real iOS or Android Devices
- Adding Interactivity, More Widgets & Theming [EXPENSE TRACKER APP]
- Module Introduction
- Starting Setup & Repetition Time!
- Adding an Expense Data Model with a Unique ID & Exploring Initializer Lists
- Introducing Enums
- Creating Dummy Data
- Efficiently Rendering Long Lists with ListView
- Using Lists Inside Of Lists
- Creating a Custom List Item with the Card & Spacer Widgets
- Using Icons & Formatting Dates
- Setting an AppBar with a Title & Actions
- Adding a Modal Sheet & Understanding Context
- Handling User (Text) Input with the TextField Widget
- Getting User Input on Every Keystroke
- Letting Flutter do the Work with TextEditingController
- Time to Practice: Adding a New Input
- Exercise Solution
- Closing The Modal Manually
- Showing a Date Picker
- Working with "Futures" for Handling Data from the Future
- Adding a Dropdown Button
- Combining Conditions with AND and OR Operators
- Validating User Input & Showing an Error Dialog
- Saving New Expenses
- Creating a Fullscreen Modal
- Using the Dismissible Widget for Dismissing List Items
- Showing & Managing "Snackbars"
- Flutter & Material 3
- Getting Started with Theming
- Setting & Using a Color Scheme
- Setting Text Themes
- Using Theme Data in Widgets
- Important: Adding Dark Mode
- Adding Dark Mode
- Using Another Kind of Loop (for-in)
- Adding Alternative Constructor Functions & Filtering Lists
- Adding Chart Widgets
- Module Summary
- Building Responsive & Adaptive User Interfaces [EXPENSE TRACKER APP]
- Module Introduction
- What is "Responsiveness"?
- Locking the Device Orientiation
- Updating the UI based on the Available Space
- Understanding Size Constraints
- Handling to Screen Overlays like the Soft Keyboard
- Understanding "Safe Areas"
- Using the LayoutBuilder Widget
- Building Adaptive Widgets
- Module Summary
- Flutter & Dart Internals [TODO APP]
- Module Introduction
- Three Trees: Widget Tree, Element Tree & Render Tree
- How The UI Is Updated
- Refactor & Extract Widgets To Avoid Unnecessary Builds
- Understanding Keys - Setup
- Which Problem Do Keys Solve?
- Understanding & Using Keys
- Mutating Values in Memory & Making Sense of var, final & const
- Module Summary
- Building Multi-Screen Apps & Navigating Between Screens [MEALS APP]
- Module Introduction
- Project Setup
- Using a GridView
- Widgets vs Screens
- Displaying Category Items on a Screen
- Making any Widget Tappable with InkWell
- Adding Meals Data
- Loading Meals Data Into a Screen
- Adding Cross-Screen Navigation
- Passing Data to the Target Screen
- Introducing the Stack Widget
- Improving the MealItem Widget
- Adding Navigation to the MealDetails Screen
- Improving the MealDetails Screen
- Adding Tab-based Navigation
- Passing Functions Through Multiple Layers of Widgets (for State Management)
- Managing App-wide State & Data
- Adding a Side Drawer
- Closing the Drawer Manually
- Adding a Filter Item
- Replacing Screens (Instead of Pushing)
- Adding More Filter Options
- Replacing WillPopScope with PopScope
- Returning Data When Leaving a Screen
- Reading & Using Returned Data
- Applying Filters
- An Alternative Navigation Pattern: Using Named Routes
- Module Summary
- Managing App-wide State [MEALS APP]
- Module Introduction
- What's The Problem?
- Installing the Solution: Riverpod
- How State Management with Riverpod Works
- Creating a Provider
- Using a Provider
- Creating a More Complex Provider with StateNotifier
- Using the FavoritesProvider
- Triggering a Notifier Method
Flutter Multi-Vendor E-commerce | Shop | Food | Store App | Multi-store App | Node.js | Express | MongoDB | Deployment
- Ratings
- 4.91
- Subscribers
- 340
- Subscribers last month
(September 2024) - -
- Level
- all
- Video Duration
- 34 hours 25 minutes
- Created
- May 26th, 2024
- Last updated
- Sep 30th, 2024
- Price
- $54.99
Course: Build a Flutter Multi-Vendor E-commerce App
Learn how to create a powerful and scalable multi-vendor e-commerce app using Flutter. This course will guide you step-by-step through the process of building a complete app that can support multiple stores, whether for general shopping, food delivery, or a mix of both.
What You'll Learn:
Flutter Basics:Understand the fundamentals of Flutter and how to build beautiful, responsive user interfaces.
Multi-Vendor Functionality: Learn to create features that allow multiple vendors to list and manage their products.
State Management with Riverpod: Master state management in Flutter using Riverpod to build efficient and maintainable applications
Backend Development: Use Node.js and Express to build a secure and efficient backend.
Database Management: Implement MongoDB to handle data storage and ensure scalability.
Real-Time Updates: Set up real-time notifications to keep users informed about orders and promotions.
Deployment: Learn how to deploy your app and make it live for users.
Why Take This Course?
Hands-On Experience: Build a real-world application from scratch.
Comprehensive Curriculum: Covers both frontend and backend development.
Career Boost: Gain valuable skills that are in high demand in the job market.
Supportive Community: Access to a community of learners and instructors for guidance and support.
By the end of this course, you'll have the skills and knowledge to create a fully functional multi-vendor e-commerce app, ready to deploy and scale. Join us and start your journey to becoming a proficient Flutter developer!
- Introduction
- Quick Overview
- Create Flutter Project
- MVC Architecture
- Configure Assets
- Add Google Fonts
- Authentication Ui
- Create Login Screen
- Create TextFormFields
- Sign in Button
- Advance Button
- Create Register Screen
- Add Validation
- Login Validator
- Introduction To Node js
- Install Node Js
- Create Nodejs Project
- Initialize Project
- Write First Script
- Express Server in Node.js
- Create Your First EndPoint
- Separate Route
- Integrate MongoDb - Backend
- Integrate MongoDb
- Create Signup Api EndPoint
- Create User Model
- Validation Check
- Signup Api Endpoint
- Catching Error
- Testing Api - Thunder Client
- Password Hashing
- Create Signin Api Endpoint
- Create Api Endpoint
- Testing Validation
- Catching Errors
- Consume Signup API in Flutter App
- Create User Model - Define Fields
- Serialize User Model
- Convert To Json
- Deserialization
- User Factory
- Manage Http Response
- Get Your Ip Address
- Consume Api - Signup
- Consume Api Final - Sign Up
- Consume Signin Api - Flutter
- Consume Api - Signin
- Add Token Field
- Enhance Authentication Ux & Clean MongoDb
- Improve Auth User Experience
- Create Main Screen
- Navigate User
- Clear User Collection - MongoDb
- Working On Main Screen - Front-end
- Create Bottom Navigation Bar
- BottomNavigationBarItem
- Create Nav Screens
- Working On Home Screen - Front-end
- Create Header
- Create Search Field
- Finalise Header
- Banner Api Endpoint - Backend
- Banner Schema
- Post Api Endpoint
- Testing Api - Thunder Client
- Get Route
- Category Api Endpoint - Backend
- Category Schema
- Post Api Route Endpoint
- Testing Api - Thunder Client
- Get Route Api Endpoint
- Sub Categories Api Endpoint - Back-End
- Subcategory Schema
- Subcategory Post Route
- Testing Subcategory Api
- Get Subcategories By Category Name
- Testing Get Request
- Product Api Endpoint - Backend
- Product Schema
- Add Product Api
- Testing Product Api
- Get Request - Popular Products Api
- Get Request - Recommended Products Api
- Review and Rating System Api - Backend
- Rating and Review Schema
- Rating and Review Api Endpoint
- Get Reviews and Rating - Get Request
- Flutter Web Admin Panel
- Create Web Project
- Add Flutter Admin Scaffold Package
- Create Sidebar
- Create Sidebar Screens
- Name Route - Navigation
- SideBar Final - Switch
- Improve Design
- Consuming API - Categories -Web Admin Panel
- Category Ui
- Add File Picker Package
- Pick Category Image
- Validation Check / Store Value
- Pick Category Banner
- Consuming API - Categories -Web Admin Panel Final
- Define Category Fields
- Serialize and Deserialize Model
- Add Http Package
- Manage Http Response
- Add Cloudinary for Image Storage
- Upload Images to Cloudinary
- Upload Category
- Cross-Origin Resource Sharing - Explanation
- Consuming Api - Banner - Web Admin Panel
- Banner Screen Ui
- Banner Models
- Upload Banner - Consuming Banner Api
- Consuming Api - Get Request - Fetch Data - Web Admin Panel
- Retrieve banners from API
- Display Banners
- Optimize banner displays
- Upload Real Banners
- Retrieve Categories from API
- Display Categories
- Consuming API - Subcategories and Main Categories - Admin Panel
- Create Subcategory Screen
- Fetch Main Categories - Display in Dropdown
- Subcategory Model - Define Fields
- Create Subcategories - Post Request
- Get Request - Subcategories API - Back-end
- Display Subcategories
- Flutter App - Display Banners
- Create Banner Widget
- Display Banners - PageView
- Flutter App - Display Categories
- Display Categories
- Upload Real Categories
- Create Reusable Text Widget
- Flutter App - Display Subcategories by Category
- Create Category Screen
- Left - Side Display Categories
- Right Side - Display Category Banner & Name
- Fetch Subcategories By Category - Http Get Request
- Display Subcategories By Category
- Display Default Subcategories
- Flutter App - Inner Category Screen
- Create Inner Category Screen
- Inner Header Widget
- Display Category Banner
- Display Subcategories
- Subcategory Tile Widget
- Custom Horizontal Scrolling Grid Layout
- Inner BottomNavigationBar
- Fix Overflow Error
- Token-Based Authentication and User State Management with Riverpod
- Add Riverpod and Shared Preferences
- User State Management
- Manage User Sessions
- Maintaining User State
- Backend for Vendor Authentication
- Vendor Schema
- Vendors Signup API Endpoint
- Test Signup Api / Signin Vendor
- Signout and Clear User State
- Signout User
- Consume Vendor Signup /Signin Api
- Start Working
- Configure Project
- Create Vendor Model - Front-end
- Handle Http Response
- Signup Vendors - Consuming API
- Signin Vendors - Consuming API
- Authenticate Vendors
- Create Main Vendor Screen / Add Package
- Persist Vendor User State - Vendor State Management
- Create Vendor Provider
- Save Vendor Data Locally
- Checking Vendor State
- Vendor BottomNavigationBar
- Vendor BottomNavigationBar Final
- Vendor - Uploading Products
- Add Image Picker Package
- Select Images
- Display Images
- Create Product Fields
- Select Main Category
- Select Sub Category
- Upload Product Ui Final
- Consuming Upload Product API / Upload Products
- Add Cloudinary For Hosting Product Images
- Create Product Model/ Update Backed Product Model
- Upload Images to Cloudinary
- Vendor - Upload Products
- ConsumerStatefulWidget Vs ConsumerWidget
- Improve Vendor Experience
- Change Keyboard Type
- Fetch and Display Products
- Create Product Model
- Consuming Get Popular Product Api
- Display Popular Products
- Product Design
- Back-End Get Product By Category Api
- Products By Category Api
Learn how to improve your Flutter & Dart code through mastery of S.O.L.I.D principles and the Top GoF Design Patterns.
- Ratings
- 4.51
- Subscribers
- 4,458
- Subscribers last month
(September 2024) - 76
- Level
- intermediate
- Video Duration
- 4 hours 1 minutes
- Created
- Nov 12th, 2022
- Last updated
- Jan 27th, 2024
- Price
- $74.99
We all want to become better software developers and be able to call ourselves "Software Engineers" or "Software Architects", but to do that you first have to master a number of design patterns.
This course will put you on a track to that destination.
We will teach you how to recognize when to use specific design patterns to build complex systems in a divide-and-conquer manner so that complexity is reduced and abstracted.
But rather than learning all the design patterns out there, we have curated the most important, the top fundamental GoF Design Patterns for you.
All of that in the context of the Flutter Framework using Dart.
We start with full understanding of the S.O.L.I.D Design Principles and how they in turn relate to those design patterns. We eplain everything in the context of real-wprld problems as well as specific code examples.
At the end of the course you will get to Architect a solution by coding John Conway's Game of Life simulation which will run on your mobile device.
Complex software systems are plagued with three major issues:
Timelines are stretched as requirements change.
Multiple developers have a hard time coordinating their efforts.
Code redundancy.
This in turn creates issues with maintenance and overall flexibility for adding new features. In general this means poorly designed systems that are hard to maintain and are not adaptable.
One answer to all the above problems is having a proper design and architecture. Think of a skyscraper being built. There is always a high-level blueprint. This blueprint is used to show everybody involved (from architects to supply chain to construction workers to machinery scheduling etc…) what is being worked on.
Everybody understands and follows the same vision.
A blueprint has a number of commonly understood elements which repeat themselves across many projects. For example all buildings need electrical wiring and plumbing, they might need elevators, and cooling systems, and underground parking lots, and of course stairs. They also usually are connected to the electrical grid and water supply as well as… roads.
All these common elements follow certain standards that have been improved over many many years and across many many projects. They are well understood and can be used almost like recipes.
In Software Engineering we also have a set of elements that repeat themselves across many projects. For example all software applications need to create objects, they need to communicate state change across those objects, they need to be able traverse over collections of those objects. In other words, if you want to be a better developer then you need to become proficient in those elements that have been time-tested. In the Software Engineering world these elements are known as “Design Patterns”
This course will teach students how to recognize when to use specific design patterns to build complex systems in a divide-and-conquer manner so that complexity is reduced and abstracted.
This will help you to design projects in an Architectural manner before any major development happens and can be used to shorten development time and reduce maintenance costs.
Design patterns are important because they are time-tested recipes or solutions to well-known software engineering problems. When creating software applications certain problems recur in a pretty predictable fashion so rather than ‘reinvent’ the wheel we will have an assortment of, if you will, wheels to choose from.
We will teach you this in a slightly different manner than you probably have been taught before. We will take a practical approach (i.e. specific examples) but the power of Design Patterns comes from their ‘concept’ and we will teach you the concept of those design patterns so that you are fully able to change them and modify them to your needs. In addition we will look at how to combine all those patterns into something greater: an architecture.
A well designed Architecture is this magical thing where the whole is greater than the sum of its parts.
This is what we will strive to teach you.
- Introduction
- What are Design Patterns and why do we need them?
- The Design Patterns Covered in This course.
- Quick Quiz about design pattern families
- The WHY Of Software Architecture.
- Why use UML?
- Organized vs. Unorganized code.
- *OPTIONAL*: UML Refresher.
- What makes a Great Architecture?
- Hallmarks of Good Architecture.
- S.O.L.I.D Design Principles.
- SOLID *Practice Session* - Single Responsibility Principle(SRP)
- SOLID *Practice Session* - Open/Closed Principle (OCP)
- SOLID *Practice Session* - Liskov Substitution Principle (LSP)
- SOLID *Practice Session* - Interface Segregation Principle (ISP)
- SOLID *Practice Session* - Dependency Inversion Principle (DIP)
- SOLID Principles Quiz
- Singleton Design Pattern
- Understanding the Singleton Pattern
- Architectural Considerations for Singleton Pattern
- Coding the Singleton Pattern in Dart
- Singleton Quiz
- Singleton Pattern Coding Exercises
- Coding Exercise #1 Solution
- Coding Exercise #2 Solution
- Factory Method Design Pattern
- Understanding Factory Method Pattern
- Architectural Considerations for Factory Method Pattern
- Coding the Factory Method Pattern in Dart
- Factory Method Pattern Quiz
- Factory Method Pattern Coding Exercises
- Builder Design Pattern
- Understanding Builder Design Pattern
- Architectural Considerations for Builder Design Pattern
- Coding the Builder Pattern in Dart
- Builder Pattern Quiz
- Builder Design Pattern Coding Exercises
- Adapter Design Pattern
- Understanding the Adapter Design Pattern
- Architectural Considerations for the Adapter Pattern
- Coding the Adapter Pattern In Dart
- Adapter Pattern Quiz
- Adapter Design Pattern Coding Exercises
- Strategy Design Pattern
- Understanding the Strategy Design Pattern
- Architectural Consideration for the Strategy Design Pattern
- Coding the Strategy Design Pattern
- Strategy Pattern Quiz
- Strategy Design Pattern Coding Exercise
- Observer Design Pattern
- Understanding the Observer Design Pattern
- Architectural Consideration for the Observer Design Pattern
- Coding with Observer Design Pattern Part 1 - setState()
- Coding with Observer Design pattern Part 2 - Streams
- Observer Pattern Quiz
- Observer Design Pattern Coding Exercise
- State Design Pattern
- Understanding the State Design Pattern
- Architectural Consideration for the State Design Pattern
- Coding the State Design Pattern
- State Design Pattern Coding Exercises
- Course Assignment - The Game of Life
- About John Conway's Game Of Life Simulation
- A Word about the "Game of Life" Architecture
- Final Thoughts
- Where do you go from here?
- Thank you!
Build Mobile apps for Android and iOS using Dart, Flutter, Provider, Riverpod, SQLite, Firebase, REST APIs and more.
- Ratings
- 4.57
- Subscribers
- 1,636
- Subscribers last month
(September 2024) - 51
- Level
- all
- Video Duration
- 43 hours 33 minutes
- Created
- Aug 16th, 2023
- Last updated
- Apr 10th, 2024
- Price
- $89.99
Currently Flutter is one of the most popular cross platform framework amongst the developers. Flutter targets multiple platforms from a single code base. In this course, you will learn how to build apps for Android and iOS using the core components of Flutter. Also, you will learn syntaxes and essential features of Dart Programming Language since Dart is used to build Flutter projects.
You will begin with Dart Programming Language and you will begin from scratch. Dart is a powerful language and heavily optimized for Flutter. You will learn many features of Dart, specially those are required for Flutter. You will learn Lambda Expressions which will help you work functionally and alos Null Safety will protect your code from crashing due to Null Pointer Exception. You will learn about Object Oriented concepts like Inheritance, Polymorphism, Abstraction and Mixin that can help you to write your code in a modular format.
You will be introduced with many Widgets-the main core components of Flutter. The more you know about Widgets, the more you know Flutter. It's also important to take few considerations while chosing Widgets, because at the end of day, performance play a key role in any software development. Widgets need to be refractored and you will learn how to seperate codes into reusable Widgets and Methods. You will also learn the basic State Management approach using Stateful Widget and the necessity of Stateless and Stateful, where to use, when to use and why to use them in a proper way.
You will learn Provider - a simple yet powerful approach for State Management and also know how this approach can turn your project in a extendable, expandable pattern. You need to understand the state and then chose which approach is best for you. State Management is a very crucial part of Flutter and many developers are tempted with many approaches and end up overdoing things. You will learn exactly what you need to identify and manage the states of you app in an optimized way.
To persist data, this course covers both the local and cloud persistance. Local Database is important to cache data and also for apps those really dont' need to share its data to the world. You will learn SQLite and CRUD operations and migrations also. You will use Firebase for cloud solution, a powerful backend backed by Google. Firebase provides many services, both in free and paid subscription. Authentication, Realtime Database, Storage, Messaging, Functions are the key services that has been covered in this course.
You will learn how to make web requests and fetch JSON and convert it to Dart objects. Dart provides a convenient package for handling network operations and web requests.
In parallel with learning, you will be practicing the conventions and recommendations for writing good codes using principals, patterns and good practice approaches.
By the end of this course, you will be able to build any kind of mobile apps using Flutter and will have a strong foundation and clear concept.
- Introduction
- Welcome to the course
- What is inside the course
- Setup SDKs and Tools
- Install Flutter SDK on Windows
- Download and Install Android Studio on Windows
- Install Flutter and Dart Plugins
- Install Android Emulator
- Create First Project and Run on Emulator
- Dart Programming Language
- Welcome to Dart
- Say Hello World!
- Number Types in Dart
- String Interpolation
- Var and Dynamic types
- Final and Const keywords
- Common Operators in Dart
- Quiz on Dart Basics
- If Else Statement
- Switch Statement and Expression
- Data Structure - List
- Data Structure - Map
- Data Structure - Set
- Loops in Dart
- Null Safety in Dart
- Function in Dart
- Lambda Expression in Dart
- Class Object and Constructor
- Named Constructor
- Inheritance in Dart
- Method Overriding
- Abstract Class in Dart
- Runtime Polymorphism
- Mixin in Dart
- Final and Static Components
- Asynchronous Components - Future and Async Await
- Wrap Up
- Flutter Basic Widgets
- Welcome to Flutter
- Hello Flutter - Our First App
- Quick Overview on Profect File Structure
- Center Widget - Put the text in Center
- MaterialApp - Our first theme widget
- Scaffold and AppBar
- Show Image from Network
- Column Widget and its Axis
- Row Widget and its Axis
- Design Practice
- Solution Code for Design Practice
- Code Refractoring
- Stack and Positioned Widget
- Another Design Challange
- Solution for Design Challange
- ListView vs Column
- Create ListView children dynamically
- ListView Builder Constructor
- GridView Builder Constructor
- Navigate using Material Page Route
- The Counter App from Scratch
- Introducing Stateful Widget
- Excercise on Stateful Widget
- Solution for Excercise on Stateful Widget
- Input Widgets - TextField
- Input Widgets - Checkbox
- Input Widgets - Radio
- Input Widgets - DropdownButton
- Assignment - ToDo App
- ToDo App Solution - Part 1
- ToDo App Solution - Part 2
- ToDo App Solution - Part 3
- ToDo App Solution - Part 4
- Hot Reload and Restart
- Wrap Up
- State Management with Provider
- State Management Overview
- Ephemeral and App State
- Add Provider Library
- Replace setState with Provider in Counter App
- Few observations
- Your Assignment
- Assignment Solution
- Project-Word Hurdle
- Project Overview
- Project and Library Setup
- Word Hurdle Page Overview
- Create Hurdle Provider
- Create the Hurdle Board
- Create KeyboardView
- Create VirtualKey Widget
- Collect the 5 letters
- Show letters on Hurdle Board
- Delete letters from Hurdle Board
- Check Input for Validation
- Check result and show dialog
- Mark letters on Hurdle Board
- Reset the Game
- Wrap up - A few suggestions
- Download full project
- Navigation using Go Router
- Flutter Navigation Overview
- Setup project with Go Router package
- Navigate to different routes
- Navigate using Name
- Pass arguments as path parameters
- Pass arguments as extra
- Customize Error Page and Redirect Routes
- Router and Navigator Together
- Wrap Up
- Project-Virtual Card Holder
- Project Overview
- Project and Library Setup
- Create Home Page
- Add BottomNavigationBar to HomePage
- Create Scan Page and add Camera Buttons
- Capture and Select Image
- Scan Text from Image
- Add LongPressDraggable Widget and make each line draggable
- Create Drop Target Widget
- Drop items on DropTarget Widget
- Add a Next Button
- Create Form page and Pass Contact Object
- Assign values to TextFormFields
- Modify ContactModel Class
- Create Database and Contact Table
- Write insert and query methods
- Save Contact and show in a list
- Update list after insert
- Bux Fixed
- Write Delete method
- Delete a Contact
- One more SILLY bug fixed
- Update Contact Favorite
- Show Favorite Contacts
- Migrate Database
- ContactDetailsPage with FutureBuilder
- Make Call and Send SMS
- Your Assignment
- Wrap Up
- Download Full Project
- Project Earthquake Log App
- Earthquake App Overview
- About USGS API
- Project and Library Setup
- Create Dart Model class from JSON
- Create Earthquake Provider and declare properties
- Make Get Request
- Show Earthquake Data on HomePage
- Show Alert Color with Chip Widget
- Sort Earthquake Data
- Selet Date and Change Date Parameters
- Detect Device Current Location
- Convert coordinates to Placemark
- Wrap Up
- Download full project
- Firebase Project - Admin App
- Module Overview
- Firebase Overview
- Create Firebase Project
- Add Flutter project to Firebase
- Create Login and Dashboard Page
- Enable Authentication Service and Create a User
- Redirect to Login or Dashboard Page
- Login with Email and Password
- Logout from App
- Create Firestore Database
- Create Admins Collection and Document
- Validate Admin Authorization
- Create Dashboard Items
- Create Brand Data Class and define database methods
- Create Brand Page and Telescope Provider
- Save Brands
- Telescope Data Overview
- Download Telescope resources
- Add Freezed Package
- Create ImageModel using freezed
- Create Telescope Model using freezed
- Declare Constants and Properties
- Add Telescope Page - Select Image and Brand
- Add Telescope Page - Build RadioGroup
- Add Telescope Page - Build Form Fields
- Add Telescope Page - Create methods for uploading image
- Add Telescope Page - Create Telescope instance
- Add Telescope Page - Create methods to save telescope
- Add Telescope Page - Save Telescope to Firestore
- ViewTelescopePage - Show telescopes
- Telescope Details Page Overview
- Add and show additional images
- Delete image from Storage
- Add telescope description
- Update Description
- Update Telescope Price
- Firebase Project - User App
- Create User App and add Components
- Add User app to Firebase project
- Define Custom Theme for App
- Login Page with Segmented Button
- Create Login and Registration Section
- Login and Registration Section in Action
- Complete the Login Page Design
- Create AppUser Model using JsonConverter
3. Top 3 Recommended YouTube Videos
Here are Outlecture's top 3 recommended YouTube videos, carefully selected for you.
Title | View count | View count last month (September 2024) | Like count | Publish date |
---|---|---|---|---|
📱 FULL Flutter Beginner Course • Programming Basics / Widgets / Navigation / User Input / UI Channel: Mitch Koko | 876,728 | 47,454 | 28,562 | Sep 17th, 2023 |
The Complete Dart & Flutter Developer Course | Full Tutorial For Beginners to Advanced Channel: Rivaan Ranawat | 720,234 | 57,902 | 16,544 | Aug 3rd, 2023 |
Flutter Basic Training - 12 Minute Bootcamp Channel: Fireship | 913,865 | 25,314 | 30,055 | Nov 16th, 2021 |
YouTube has become a familiar platform for everyday use, where viewers can watch videos for free, although they may contain advertisements. Recently, there has been an increase in the availability of high-quality educational materials on this platform.
It is an excellent option for those who want to learn without paying or simply obtaining a quick understanding of a topic.
We highly recommend utilizing YouTube as a valuable learning resource.
Recommended for
- Wanting to learn without spending money
- Wanting to quickly understand the overview of Flutter
The details of each course are as follows:
Mitch Koko
- View count
- 876,728
- View count last month
(September 2024) - 47,454
- Like count
- 28,562
- Publish date
- Sep 17th, 2023
💰 I'll develop your MVP app: https://mitchkoko.app/mvp
📱 Code: https://mitchkoko.app/
🎓 Flutter Beginner Course: https://youtu.be/HQ_ytw58tC4
~;
https://instagram.com/createdbykoko/
https://twitter.com/createdbykoko/
https://www.tiktok.com/@createdbykoko/
https://www.patreon.com/mitchkoko/
~;
⌚️TIMESTAMPS
0:00 intro
0:41 table of contents
2:06 programming fundamentals
3:31 variables
4:46 basic math operators
6:24 comparison operators
7:39 logical operators
9:36 if else statement
13:04 switch statement
14:21 for loops
18:04 while loops
19:21 functions
20:36 functions with parameters
22:17 functions with return type
24:13 data structures • LIST
26:55 data structures • SET
27:33 data structures • MAP
29:38 widgets • SCAFFOLD
31:42 widgets • CONTAINER
34:22 widgets • TEXT
35:04 widgets • ICON
35:52 widgets • APP BAR
37:09 widgets • COLUMN / ROW
41:53 widgets • LISTVIEW
44:24 widgets • GRIDVIEW
46:45 widgets • GESTURE DETECTOR
48:35 navigation • ROUTES
51:35 navigation • DRAWER
55:37 navigation • BOTTOM NAV BAR
59:48 stateless vs stateful widgets • COUNTER APP
1:04:58 user input • TEXTFIELD
1:10:28 TO DO APP
1:52:42 ECOMMERCE APP UI
2:22:01 Final Thoughts
Rivaan Ranawat
- View count
- 720,234
- View count last month
(September 2024) - 57,902
- Like count
- 16,544
- Publish date
- Aug 3rd, 2023
📌 Discord Server - https://discord.gg/Q8Rx8YWFVF
Source Code - https://github.com/RivaanRanawat/flutter_beginners_course
Practice Loops - https://shorturl.at/brQZ0
Futurevoid vs void - https://shorturl.at/sHMPR
Font & Image Assets - https://shorturl.at/sSU57
Dummy Data Shop App - https://shorturl.at/ghw14
Inherited Widget Flutter Video - https://www.youtube.com/watch?v=Zbm3hjPjQMk
Timestamps:
(00:00:00) Course Overview
(00:02:16) What is Dart?
(00:03:52) Dart SDK
(00:06:57) Print Statement
(00:09:59) Operators
(00:14:39) Comments
(00:17:31) Variables
(01:11:35) Control Flow
(01:37:52) Exercise 1
(01:46:06) Loops
(02:10:49) Functions
(02:46:53) Classes
(03:41:10) Inheritance
(03:59:58) implements keyword
(04:10:13) Abstract Classes
(04:15:03) Object Oriented Programming (OOP) in Dart
(04:17:09) Polymorphism
(04:20:52) Abstraction
(04:23:12) Encapsulation
(04:25:11) OOP Brief
(04:26:14) Mixins
(04:33:40) Class Modifiers
(04:40:48) Lists
(05:23:04) Sets
(05:25:39) Maps
(05:50:32) Enums
(06:03:03) Exception Handling
(06:11:45) Futures
(06:56:08) Streams
(07:19:46) (Bonus) Creating Records
(07:23:57) (Bonus) Patterns & Pattern Matching
(07:36:11) Extensions
(07:42:25) Introduction to Flutter
(07:42:35) Installing Flutter
(07:51:59) Installing Android Studio & Configuring for Android
(07:56:37) Installing Xcode & Configuring for iOS
(07:58:47) Installing VS Code
(08:00:24) Exploring VS Code
(08:04:41) Creating & Exploring The Flutter Project
(08:18:27) Running Flutter App
(08:31:11) Writing First Flutter Code!
(08:32:34) Importing Packages and material.dart
(08:35:20) runApp function in Flutter
(08:37:24) What are Widgets?
(08:38:10) Text Widget
(08:55:24) Types of Widgets
(08:57:22) What is State?
(08:58:48) Stateless Widget
(09:11:43) Material & Cupertino Design
(09:13:51) MaterialApp
(09:17:45) Scaffold Widget
(09:21:37) Center Widget
(09:26:28) Widget Tree
(09:29:09) Splitting & Extracting Widgets
(09:34:49) What is BuildContext?
(09:37:38) Importing Files & Magic of Flutter Extension
(09:40:05) Relative Importing
(09:42:47) Breaking Down The Currency Converter App
(09:43:31) Column Widget
(09:52:10) ColoredBox Widget
(09:53:01) Color Class
(09:56:53) TextStyle
(10:04:22) Colors
(10:06:49) TextField Widget
(10:48:00) Why Build Function Should Contain NO Complex Tasks
(10:53:12) Padding & Container Widget
(11:02:01) Padding vs Margin - The Difference
(11:07:56) TextButton Widget
(11:13:35) Flutter Lints
(11:18:50) TextButton Widget contd.
(11:34:29) ElevatedButton Widget
(11:44:26) AppBar Widget
(11:51:47) StatefulWidget
(12:24:38) Build Function Can Be Called How Many Times?
(12:27:11) setState
(12:41:19) CupertinoApp & iOS Styled Widgets
(12:59:14) initState and dispose
(13:02:05) Recap & Widgets LifeCycle
(13:09:53) Weather App Demo
(13:11:06) Weather App Setup & Default Flutter Code
(13:26:48) GestureDetector & InkWell Widget
(13:29:20) IconButton Widget
(13:30:17) PlaceHolder Widget
(13:34:22) Card Widget
(13:45:35) ClipRRect Widget
(13:47:01) Backdrop and ImageFilter Widget
(13:58:14) Row Widget
(14:07:49) SingleChildScrollView Widget
(14:13:33) Additional Info Section
(14:25:07) Passing Arguments
(14:35:02) http plugin in Flutter
(14:38:12) OpenMapWeather API
(14:44:57) Handling Future in initState
(14:48:05) Extracting Data from API
(15:01:22) Loading Indicator
(15:06:55) FutureBuilder Widget
(15:19:28) AsyncSnapshot
(15:30:25) for loop
(15:39:42) ListView.builder Widget
(15:50:23) Date Formatting using intl
(16:05:35) Layout Principle In Flutter Explained
(16:10:57) Flutter Behind The Scenes, 3 Trees & BuildContext
(16:32:15) Shop App Demo
(16:33:32) Shop App Project Setup (Fonts, Theme, ColorScheme)
(16:52:23) Header (SafeArea Widget)
(16:59:26) Expanded Widget
(17:14:16) Chip Widget
(17:30:17) How Theming Works Behind the Scenes (InheritedWidget)
(17:37:35) Selecting Filter contd.
(17:38:40) Images and Dummy Data
(17:45:12) Displaying Products List on Home Page (Image Widget)
(18:09:51) Designing Product Details Page (Spacer and Flex Widget)
(18:37:33) Navigation & Routing
(18:48:20) How Navigator Works Behind The Scenes? (And State Management)
(18:59:59) BottomNavigationBar Widget
(19:09:10) IndexedStack Widget
(19:11:59) Designing Cart Page (ListTile Widget)
(19:22:38) State Management with Provider, SnackBar
(19:51:20) Dialogs in Flutter
(20:00:18) Provider Extension Methods on BuildContext & Recap
(20:09:55) Flutter Responsive UI (MediaQuery)
(20:33:15) InheritedWidget vs InheritedModel
(20:35:03) Responsive UI in Flutter (LayoutBuilder Widget)
(20:42:01) MediaQuery vs LayoutBuilder
(20:45:24) Challenge: Make Weather App Responsive
(20:45:48) Flutter Widgets Sizing Summary
(20:46:53) Conclusion
#flutter #dart
Fireship
- View count
- 913,865
- View count last month
(September 2024) - 25,314
- Like count
- 30,055
- Publish date
- Nov 16th, 2021
🔥 Get The FULL FlutterFire Course - Upgrade to PRO
💰 30% off (expires 11/23) with code: ibTd664q
#flutter #dev #learntocode
🔗 Resources
Full Course: https://fireship.io/courses/flutter-firebase/
Flutter Docs https://flutter.dev/
Hire Rolly Peres for Flutter Dev https://github.com/narcodico or rolly@narcodic.com
📚 Chapters
00:00 Flutter Basic Training
00:56 Get Started
02:36 Stateless Widget
03:20 Material App
03:58 Container
05:07 Flex Layout
06:07 Stack
07:00 Scaffold Magic
07:27 Debugger
07:47 ListView
08:09 Builder
08:25 Stateful Widget
09:32 Advanced State Management
10:03 Navigator
10:51 Hero
🎨 My Editor Settings
- Atom One Dark
- vscode-icons
- Fira Code Font
🔖 Topics Covered
- Flutter Tutorial for Beginners
- Flutter Flex Layout
- Stateless vs Stateful Widgets
- Navigation in Flutter
- Flutter for Mobile Dev on iOS and Android
5. Wrap-up
We introduced recommended courses for Flutter. If you are interested in learning other related courses, please refer to the following.
If you want to further explore and learn after taking one of the courses we introduced today, we recommend visiting the official website or community site.
If you want to stay up-to-date on the latest information, we suggest following the official Twitter account.
Furthermore, We highly recommend utilizing General AI such as ChatGPT as a study aid. This can enable more effective learning, so please give it a try.
We hope you found our website and article helpful. Thank you for visiting.