Flutter Course for Beginners - 37-hour Cross Platform App Development Tutorial
HTML-код
- Опубликовано: 23 фев 2022
- Learn how to use Flutter in this complete course for beginners. Flutter is an open-source UI software development kit used to create cross-platform applications for iOS, Android, Windows, Mac, and more.
💻 GitHub repo: github.com/vandadnp/mynotes-c...
✏️ Course developed by Vandad Nahavandipoor. Check out his channel: / @vandadnp
🔗 Discord study group (for questions and answers about this course): / discord
🔗 Setting up Firebase CLI and FlutterFire CLI on Windows: • Supplementary Material...
⭐️ Course Contents ⭐️
⌨️ (00:00:00) Introduction
⌨️ (00:02:57) Developer Accounts
⌨️ (00:39:12) Setup
⌨️ (01:14:42) Introduction to Dart
⌨️ (02:01:26) Dart Control Statements and Collections
⌨️ (02:46:44) Sound Null safety in Dart
⌨️ (03:27:12) Dart Enumerations, Classes and Objects
⌨️ (04:18:36) Advanced Dart
⌨️ (05:00:41) Project Setup
⌨️ (05:48:30) iOS App Setup
⌨️ (06:59:32) Android App Setup
⌨️ (07:31:31) Firebase Backend Setup
⌨️ (08:01:20) Basic Registration Screen
⌨️ (09:04:54) Login View
⌨️ (09:53:10) Separating App Initialization from Login and Register Screens
⌨️ (10:19:47) Setting up Git and GitHub
⌨️ (11:10:34) Email Verification View
⌨️ (11:44:45) Link Between Login and Register Views
⌨️ (12:18:01) Logout View
⌨️ (13:13:46) Go From Login to Notes View
⌨️ (13:36:43) Cleaning Up our Routes
⌨️ (13:51:17) Error Handling in Login View
⌨️ (14:16:21) Error Handling in Register View, Next Screen After Registration
⌨️ (14:44:45) Confirming Identity Before Going to Main UI
⌨️ (14:52:21) Auth Service
⌨️ (15:55:22) Migrating to Auth Service
⌨️ (16:33:41) Unit Testing our AuthService
⌨️ (17:43:42) CRUD Local Storage
⌨️ (19:30:57) Working with Streams in Notes Service
⌨️ (20:04:32) Preparing Notes View to Read All Notes
⌨️ (20:39:21) Preparing to Create New Notes
⌨️ (21:00:16) Creating New Notes
⌨️ (21:35:42) Displaying Notes in Notes View
⌨️ (21:56:04) Deleting Existing Notes in Notes View
⌨️ (22:40:46) Updating Existing Notes
⌨️ (23:14:12) Protecting NotesService with Current User
⌨️ (23:40:44) Writing Notes to Cloud Firestore
⌨️ (24:58:08) Migrating to our Firestore Service
⌨️ (25:22:35) Sharing Notes
⌨️ (25:37:43) Introduction to Bloc
⌨️ (26:24:31) Converting our Auth Process to Bloc
⌨️ (27:31:17) Handling Auth Bloc Exceptions During Login
⌨️ (28:52:45) Moving to Bloc for Routing and Dialogs
⌨️ (28:58:23) Loading Screens
⌨️ (29:48:31) Final Touches Before App Release
⌨️ (30:43:03) App Icons and App Name
⌨️ (31:06:34) Splash Screen
⌨️ (31:56:58) Sending our iOS app to App Store Connect
⌨️ (32:55:44) Releasing our iOS App
⌨️ (33:20:31) Fixing Firebase Security Rules and Resubmitting the iOS App
⌨️ (33:50:07) Releasing our Android App
⌨️ (34:55:19) Localization in Flutter
⌨️ (36:33:57) Outro
If you enjoy this course, please make sure to give Vandad a follow on his RUclips ( ruclips.net/user/vandadnp ), Twitter ( twitter.com/vandadnp ) and LinkedIn ( www.linkedin.com/in/vandadnp/ )
Please give time stamps
@@trishalmandrik1295 time stamps in the description.
@@andrewmartin2341 Thank you 🙃
Aqui estão 4 poderosas orações que você pode rezar pelas almas do purgatório, que precisam muito delas:
1) Oração de Santa Gertrudes
Eterno Pai, Ofereço-Vos o Preciosíssimo Sangue de Vosso Divino Filho Jesus, em união com todas as Missas que hoje são celebradas em todo o mundo; por todas as Santas almas do purgatório, pelos pecadores de todos os lugares, pelos pecadores de toda a Igreja, pelos de minha casa e de meus vizinhos. Amém.
2) Oração para ter um coração misericordioso para com os outros de Santa Faustina.
Ó Jesus, compreendo que a Vossa misericórdia é inexprimível. Por isso Vos suplico: tornai o meu coração tão grande que possa conter as necessidades de todas as almas que vivem na face da terra. Ó Jesus, o meu amor vai além do mundo, estende-se até às almas que sofrem no purgatório; também por elas quero praticar misericórdia através de orações que possuem indulgências. A misericórdia de Deus é sempre insondável e
Inesgotável, como é insondável o próprio Deus. Ainda que eu me valesse das palavras mais veementes para expressar essa misericórdia de Deus, tudo isso nada seria em comparação com o que ela é na realidade. Ó Jesus, fazei o meu coração sensível a cada sofrimento do meu próximo, seja da alma ou do corpo. Ó meu
Jesus, sei que Vós procedeis conosco como nós procedemos com o próximo.
Meu Jesus, fazei o meu coração semelhante ao Vosso misericordioso Coração. Jesus, ajudai-me a passar pela vida fazendo o
Bem a todos…
Amém.
Fonte: Diário de Santa Faustina, II, #132
3) Oração do Descanso eterno:
Dai-lhes Senhor o descanso eterno.
E que a luz perpétua os ilumine. Descansem em paz.
Pai Misericordioso eu vos ofereço o sangue precioso de Nosso Senhor Jesus Cristo para alívio das almas sofredoras que ainda padecem no purgatório. Amém.
4) Ladainha pelas almas do Purgatório:
Deus onipotente, Pai de bondade e de misericórdia, tende piedade das benditas almas do purgatório e ajudai a meus queridos pais e antepassados.
Jesus meu, misericórdia! Ajudai a meus irmãos e parentes.
Jesus meu, misericórdia! Ajudai a todos meus benfeitores espirituais e temporais.
Jesus meu, misericórdia! Ajudai aos que tem sido meus amigos e empregados.
Jesus meu, misericórdia! Ajudai a quantos devo amar e orar.
Jesus meu, misericórdia! Ajudai a quantos tive prejudicado e ferido.
Jesus meu, misericórdia! Ajudai aos que tiveram faltado contra mim.
Jesus meu, misericórdia! Ajudai aqueles a quem professais predileção.
Jesus meu, misericórdia! Ajudai aos que estão mais próximos a união convosco.
Jesus meu, misericórdia! Ajudai aos que vos desejam mais ardentemente.
Jesus meu, misericórdia! Ajudai aos que sofrem mais.
Jesus meu, misericórdia! Ajudai aos que estão mais longe de sua liberação.
Jesus meu, misericórdia! Ajudai aos que menos auxílios recebem.
Jesus meu, misericórdia! Ajudai aos que mais méritos tem pela Igreja.
Jesus meu, misericórdia! Ajudai aos que foram ricos aqui, e ali são os mais pobres.
Jesus meu, misericórdia! Ajudai aos poderosos, que agora são como servos.
Jesus meu, misericórdia! Ajudai aos cegos que agora reconhecem sua cegueira.
Jesus meu, misericórdia! Ajudai aos vaidosos que desperdiçaram seu tempo.
Jesus meu, misericórdia! Ajudai aos pobres que não buscaram as riquezas divinas.
Jesus meu, misericórdia! Ajudai aos tíbios que muito pouca oração tem feito.
Jesus meu, misericórdia! Ajudai aos presunçosos que tem descuidado de tantas obras boas.
Jesus meu, misericórdia! Ajudai aos de pouca fé que descuidaram dos Santos Sacramentos.
Jesus meu, misericórdia! Ajudai aos reincidentes que apenas por um milagre da graça se tem salvado.
Jesus meu, misericórdia! Ajudai aos pais que não vigiaram bem a seus filhos.
Jesus meu, misericórdia! Ajudai aos superiores pouco atentos a salvação de seus súditos.
Jesus meu, misericórdia! Ajudai aos pobres homens, que quase apenas se preocuparam do dinheiro e do prazer.
Jesus meu, misericórdia! Ajudai aos de espírito mundano que não aproveitaram suas riquezas ou talentos para o céu.
Jesus meu, misericórdia! Ajudai aos néscios, que viram morrer a tantos não se lembrando de sua própria morte.
Jesus meu, misericórdia! Ajudai aos que não dispuseram a tempo de sua casa, estando completamente desprevenidos para a viagem mais importante.
Jesus meu, misericórdia! Ajudai aos que julgais mais severamente, quanto mais lhes foi confiado.
Jesus meu, misericórdia! Ajudai aos pontífices, reis e príncipes.
Jesus meu, misericórdia! Ajudai aos bispos e seus conselheiros.
Jesus meu, misericórdia! Ajudai a meus mestres e pastores de almas.
Jesus meu, misericórdia! Ajudai aos finados sacerdotes desta diocese.
Jesus meu, misericórdia! Ajudai aos sacerdotes e religiosos da Igreja católica.
Jesus meu, misericórdia! Ajudai aos defensores da santa fé.
Jesus meu, misericórdia! Ajudai aos caídos nos campos de batalha.
Jesus meu, misericórdia! Ajudai aos sepultados nos mares.
Jesus meu, misericórdia! Ajudai aos mortos repentinamente.
Jesus meu, misericórdia! Ajudai aos falecidos sem receber os Santos Sacramentos.
Jesus meu, misericórdia! Dai-lhes, Senhor, a todas as almas o descanso eterno.
Jesus meu, misericórdia! E fazei brilhar sobre elas vossa eterna luz.
Jesus meu, misericórdia! Que em paz descansem.
Jesus meu, misericórdia! Amém.
Thank you very much for your time but, halfway through seems like you are just rambling on yourself.
I just finished the Free flutter Course. I really enjoyed it and I'm looking forward to your upcoming videos. In the meantime here is a list of all the Chapters for whoever might need it:
00:00:11 Chapter 0 - Presentation
00:02:58 Chapter 1 - Developer Accounts
00:39:12 Chapter 2 - Setup
01:14:43 Chapter 3 - Introduction to Dart
02:01:26 Chapter 4 - Dart control statements and collections
02:46:45 Chapter 5 - Sound Null-safety in Dart
03:27:12 Chapter 6 - Dart enumerations, classes and objects
04:18:37 Chapter 7 - Advanced Dart
05:00:40 Chapter 8 - Project setup
05:48:30 Chapter 9 - iOS App Setup (App Identifier, Certificates and Profiles)
06:59:33 Chapter 10 - Android app Setup
07:31:32 Chapter 11 - Firebase Backend Setup
08:01:21 Chapter 12 - Basic register-user screen
09:04:54 Chapter 13 - Login view
09:53:10 Chapter 14 - Separating app initialization from login/register
10:19:48 Chapter 15 - Git and Github
11:10:34 Chapter 16 - Email Verification View
11:44:45 Chapter 17 - Link Between login and register views
12:18:01 Chapter 18 - Logout view
13:13:47 Chapter 19 - Go From Login to Notes View
13:36:44 Chapter 20 - Cleaning Up our Routes
13:51:17 Chapter 21 - Error Handling in Login View
14:16:21 Chapter 22 - Error Handling in Register View and Going to Next Screen After Registration
14:44:45 Chapter 23 - Confirming Identity Before Going to Main UI
14:52:22 Chapter 24 - Auth Service
15:55:22 Chapter 25 - Migrating to Auth Service
16:33:41 Chapter 26 - Unit Testing our Auth Service
17:43:43 Chapter 27 - CRUD Local Storage
19:30:57 Chapter 28 - Working with Streams in Notes Service
20:04:32 Chapter 29 - Preparing Notes View to Read All Notes
20:39:22 Chapter 30 - Preparing to Create New Notes
21:00:16 Chapter 31 - Creating New Notes
21:35:43 Chapter 32 - Displaying Notes in Notes View
21:56:04 Chapter 33 - Deleting Existing Notes in Notes View
22:40:46 Chapter 34 - Updating Existing Notes
23:14:12 Chapter 35 - Protecting NotesService with Current User
23:40:44 Chapter 36 - Writing Notes to Cloud Firestore
24:58:08 Chapter 37 - Migrating to our Firestore Service
25:22:36 Chapter 38 - Sharing Notes
25:37:44 Chapter 39 - Introduction to Bloc
26:24:31 Chapter 40 - Converting our Auth Process to Bloc
27:31:17 Chapter 41 - Handling Auth Bloc Exceptions During Login
27:52:45 Chapter 42 - Moving to Bloc for Routing and Dialogs
29:58:23 Chapter 43 - Loading Screens
29:48:31 Chapter 44 - Final Touches Before App Release
30:43:03 Chapter 45 - App Icons and app Name
31:06:34 Chapter 46 - Splash Screen
31:56:59 Chapter 47 - Sending our iOS app to App Store Connect
32:55:44 Chapter 48 - Releasing our iOS App
33:20:32 Chapter 49 - Fixing Firebase Security Rules and Resubmitting the iOS App
34:50:07 Chapter 50 - Releasing our Android App
34:55:19 Chapter 51 - Localization in Flutter
36:33:57 Outro - Final thoughts
Thanks Vandad amd freeCodeCamp!
Thank you so much for taking out the time for this! I've been wanting to learn Flutter for quite a long time and am looking forward to following this tutorial thoroughly to the end. Chapterwise breakdown definitely helps understand the tutorial so much better!
Thank you
How long it has taken to complete this ?
it 's in the video disciption :D
You’re an absolute gentleman, a scholar, and a chad!
I was a young man when I started watching this video. I am 90 now, my grand kids are all grown up now. I only have one wish before I die - finish the part of this video where we install flutter on a laptop
😅
HAHAHAAHAHHAHAAHHAHAHAAHAAHAHAHAHAAHHAAHAHAHAHA GG
🤣🤣🤣🤣🤣🤣
😂😂😂😂
Currently at 20hrs. To anyone wondering, it's a very good tutorial. If you are serious about becoming a developer in any respect this can be an extremely helpful video as it teaches alot of concepts from the dead basics to things that are sort of hard to find on your own when learning SDev through tutorials. For beginners: don't worry if you don't get everything the first time around, you aren't meant to. Revisit parts of this tutorial as many times as you need until the concepts are second nature to you. Practice and it'll come to you
Thank you❤
Your comment got me going!~ Thanks!
FINISHED YET?
Ty
I just randomly saw this video and I'm just wondering, if you're COMPLETELY beginner on this field as in no experience or idea at all, will it be advisable to still jump into this tutorial?
⭐ Course Contents ⭐(For those who only read Comments)
⌨ (00:00:00) Introduction
⌨ (00:02:57) Developer Accounts
⌨ (00:39:12) Setup
⌨ (01:14:42) Introduction to Dart
⌨ (02:01:26) Dart Control Statements and Collections
⌨ (02:46:44) Sound Null safety in Dart
⌨ (03:27:12) Dart Enumerations, Classes and Objects
⌨ (04:18:36) Advanced Dart
⌨ (05:00:41) Project Setup
⌨ (05:48:30) iOS App Setup
⌨ (06:59:32) Android App Setup
⌨ (07:31:31) Firebase Backend Setup
⌨ (08:01:20) Basic Registration Screen
⌨ (09:04:54) Login View
⌨ (09:53:10) Separating App Initialization from Login and Register Screens
⌨ (10:19:47) Setting up Git and GitHub
⌨ (11:10:34) Email Verification View
⌨ (11:44:45) Link Between Login and Register Views
⌨ (12:18:01) Logout View
⌨ (13:13:46) Go From Login to Notes View
⌨ (13:36:43) Cleaning Up our Routes
⌨ (13:51:17) Error Handling in Login View
⌨ (14:16:21) Error Handling in Register View, Next Screen After Registration
⌨ (14:44:45) Confirming Identity Before Going to Main UI
⌨ (14:52:21) Auth Service
⌨ (15:55:22) Migrating to Auth Service
⌨ (16:33:41) Unit Testing our AuthService
⌨ (17:43:42) CRUD Local Storage
⌨ (19:30:57) Working with Streams in Notes Service
⌨ (20:04:32) Preparing Notes View to Read All Notes
⌨ (20:39:21) Preparing to Create New Notes
⌨ (21:00:16) Creating New Notes
⌨ (21:35:42) Displaying Notes in Notes View
⌨ (21:56:04) Deleting Existing Notes in Notes View
⌨ (22:40:46) Updating Existing Notes
⌨ (23:14:12) Protecting NotesService with Current User
⌨ (23:40:44) Writing Notes to Cloud Firestore
⌨ (24:58:08) Migrating to our Firestore Service
⌨ (25:22:35) Sharing Notes
⌨ (25:37:43) Introduction to Bloc
⌨ (26:24:31) Converting our Auth Process to Bloc
⌨ (27:31:17) Handling Auth Bloc Exceptions During Login
⌨ (28:52:45) Moving to Bloc for Routing and Dialogs
⌨ (28:58:23) Loading Screens
⌨ (29:48:31) Final Touches Before App Release
⌨ (30:43:03) App Icons and App Name
⌨ (31:06:34) Splash Screen
⌨ (31:56:58) Sending our iOS app to App Store Connect
⌨ (32:55:44) Releasing our iOS App
⌨ (33:20:31) Fixing Firebase Security Rules and Resubmitting the iOS App
⌨ (33:50:07) Releasing our Android App
⌨ (34:55:19) Localization in Flutter
⌨ (36:33:57) Outro
Thank you!!! I wish this could get pinned📌 ❤❤
Brother, Thanks a Billion ! 👍
Thx man
Thank you! This comment should be pinned!
Please pin this comment..
FCC in 2030 : Here is a 365 day long course on Programming a Mars Rover.
They will be censored for "public health" reasons 😂
😂
😂😂😂😂
Lol
Lol
I promise that once I start working I will donate for you guys, it's unbelievable how much I learned from your RUclips channel and from your website, thank you.
Thank you so much for this course Vandad, I highly appreciate your contribution
I'm currently going through the 9th hour, and I wanted to share some information to the windows users following this course:
If you're noticing that the I/flutter section with firebase_auth error isn't appearing on your debug console, it is likely because of Scrcpy
first, make sure that you're running the code with "Start debugging"
second, as you know, unlike with macOS and Linux, on Windows, the scrcpy installation is with an executable file and not by installing it through the terminal.
If you want Scrcpy to work properly with flutter on windows. Make sure to add your scrcpy folder to the PATH in "Edit System Environment Variables"
Unbelievable, we really appreciate your efforts!!!
This channel is legendary.
Is Flutter better than React Native?
I come from a web background, I am confused whether to choose...
@@NuwaHWeil Flutter will be because widgets are already made for use.... But react you have to create every components custom.... in flutter if you want you can make custom widgets... flutter is highly optimized and is owned by Google... so no security issues although security of an app depends on your development
I appreciate the effort you have put, the patience to put together such a detailed tutorial, and the clarity with which you cover each topic. One of the best there is.
did he covered windows machine + visual studio?
To be honest this is an amazing course. I love the pace of the course and how well you explain things. A-lot of gold nuggets!
This must have taken you SO much time to put together. Thank you. It's a very helpful introduction indeed. Greatly appreciated.
I am almost in tears because of what you did. Good people live everywhere. This is fantastic and mind-blowing. I can't express my gratitude with words. Much love and respect!
he just randomly mentioned it's 0:50 in the morning when explaining Streams, thank you so much for putting the energy! You didn't look tired on the screen at all
I have been looking for an updated flutter course all over the internet, I was willing to pay money for it knowing that i can watch an updated version for free on RUclips is something really amazing which most people won't take it into consideration amazing what you guys are delivering :)
did u find a job bro?
was that enough?
At 4 hour, I have never seen anyone explaining classes so clearly, all the concepts getting cleared, take a bow🙌 I took udemy cources for react js, javascript, react native from other famous tutors but no one could clear my doubts, but Vandad explained functions, methods, classes, objects, inheritance everything so perfectly,
Don’t think twice just go for this course.❤❤❤
finished yet?
@@ahmadtaj6855 not yet bro, stuck in other work, but I am 100% sure m going to complete it in a month.
Have you done with this ?
Thanks
switched to flutter after watching this for some hours
37 hours long YT video?! Absolute madlads!
Love y'all! Keep up the good work!
Explaining developer accounts....completely underrated. I've been trying to understand this stuff for so long!
Wow! What an amazing course! Thanks Vandad for all the effort you have put on the making of this amazing course! See you in the next one!
@jamhuur what's your status?
For those watching this great tutorial. The part where he handles the user login exceptions right about the 9 and a half hour mark in this video, has changed.
Google changed the way the exceptions are handled and now all you get is "invalid-credential" and "The supplied auth credential is incorrect, malformed or has expired."
It is not an issue, it's just that google removed the individual errors to avoid brute force attacks. For example, it won't tell you if the email is incorrect, or if its only the password that's incorrect. It will just show the generic message above.
Is that the only thing that changed? If i were to start learning today is this course enough
@@naylasaleh7141 as far as I have noticed.. this is the only thing that changed. But I'm only 20 hrs into it.
At 14:03:25 I have an issue the alert dialog does not work or display to the user is this the same issue you talking about? and what is the solution?
It is still possible to make it work like in the video. Just go to your firebase console, then firebase auth settings. In the navigation pane, select User actions. Clear Email enumeration protection.
This checkbox is turned on automatically for new projects since september 15, 2023. It is recommmend because it increases security for this kind of attacks.
You can disable this 'email enumeration protection' from your Flutter Console > Authentication > Settings > User Options to get those crude exceptions like before.. These are good for understanding now, but you might wanna turn it on when developing for production.
Wow, this channel never ceases to amaze me - I can't believe the amount of free knowledge you all share. AMAZING!
I didn't expect this course to be this good. Thank you so much, just wanted to dig into something new this middle year vacations and I'm learning a lot. I always heard about Flutter but after giving React Native a try I just started with Kotlin for Android. Again, I can really tell how much did you guys help my carrer, thanks to you all
9:30:00
For anyone having issues On Firebase projects created since September 15 2023 , email enumeration protection is enabled by default. While this protects your users from abuse, it the API doesn't distinguishes between user-not-found and wrong-password anymore and instead throws a more generic error
Some important bookmarks for me:
02:22:00 lists
9:30:00 try/catch
10:47:06 cryptt-cryptograp-crypt
11:00:30 important github commands
11:50:00 Navigator.of explained
13:25:00 pushNamedAndRemoveUntil explained
This is mind blowing course that the vandad has created for 36 hours. Developer's are really pushing hard to their limits to teach on RUclipss.
Really appreciate you guys.
Ofcourse seen this course on Vandad's channel previously but again saying, this is the best flutter course one can take! Keep Up the great work, Flutter Community loves you😄
Big fan bro
The man himself!!
Love your IG clone do much man!
Many many thanks brp
Thank you so much 😄
@Rivaan Ranawat bro, I want to learn flutter from zero, is this course helpful for me? By the way in your channel you make some good project on flutter which was my list for practice session, thanks man.
The amount of detail this course goes through is amazing. Everything is explained with so much clarity. This is the course I was looking for to get started with flutter.
Dito bro
It is honestly ridiculous the level of quality of this course, and on top of that it is free... I sure hope the generations of today appreciate what abundance of knowledge are available to them... Thank you for making this incredible video!!!
This is going to take my weekend to next level. Thank you guys!
Thank you for being generous to upload this course for free.. Literally I have very less money( because I have incurred loss in my past two fashion business continuously) but have a passion to get into tech industry but doesn't have any prior tech knowledge in the age of 34 I'm starting from zero now and by this time I found your channel and it is literally lifeline for me and now you gave me the hope that I can get a job and to survive in my life 🙏 Thanks a lot for this ❤️
First of all, 34 is not old and faaaar from to late to start something new!! Keep strong and good luck! 💪🏻🤞🏻🤘🏻
@@maxfrischdev Thank you for the positivity and support 🙏
i'm 37 and trying to learn this from zero >_
@@psianipar Thank you and Good luck to you too
No one asked for a whole life story Omfg
Thank you so much for this course. I just completed it and it is the most comprehensive programming course I have taken on the internet.
This is probably the most understandable Flutter tutorial out there. Thanks!
thanks to the course creator who are generous enough to put these courses for free
:)
At hour 17 now, and I gotta say, this is the longest I have ever followed a video tutorial. Vandad is a great instructor. Definitely following through to the end of the course. He should feature more on the channel.
Do you make a web app as well in this course?
dont. do web with flutter @@nbh_9
@@nbh_9 it's the same brother, you'll make ios and android but you can select also to be web from the beginning of the creation of the app
@@ridabrahim7604 thank you. And how would you fix the layouts for web and mobile, from the same source?
@@nbh_9 that's a great question, probably there is someway to manage this, because i once ran the app on chrome because I didn't pick up my type c cable to use my phone to load the app and it was working fine on the web centered, but you gotta check for this. all i can say is you can follow along with the course even if the app is meant for web purposes but make sure when you choose which platforms pick web also
Thank you , sir. Nice phase. Easy to follow and very comprehensive! Best one I found on RUclips. Just in case, I hope this will get updated for any Flutter 3 changes. Thanks again!!!
This is absolutely fire. Can't thank you enough for the content you are providing
Thank you for your compherensive contents.
I don't think I ever seen a YT video being more than a day long! Not even sleeping sound videos are that long. o.o
you reignited my love for coding with bloc architecture wow what a beautiful code.
I am grateful for this tutorial, thank you
This is the most helpful flutter course I have seen ever..Thank you, thank you
I was a kid 37 hours ago. I am a man now.
Nepali dekhda khusi lagxa
@@asoksanzelwhat?
As of now, I have continuously watched for 4hrs 30m and i wish to continue too even at 2.30AM here. What a great course! , the entire content, your flow of thoughts without any clutter / confusion, the way you explain slowly is awesome. I would recommend everyone to watch the course who wants to learn OOPs, not just to learn flutter ..
in which chapter you are right know?
how was the experience?
@@t-rajedits4417 I'm at the 5 hours and a half mark, so far so good. The best part is not the syntax themselves but the experience from a seasoned dev. I like the developer accounts talk and the slow and steady explanation. I listen on 1.5x speed though.
Just finished my app, I followed your tutorial and modified my version to make a color picker app with color saving.
Thank you for this awesome and complete course ! It was a journey but totally worth it in the end.
How long did u take
@@Yourbrochibuikem 2 years.
@@Yourbrochibuikem All combined, including the testing and playing with components a little bit, I would say somewhere between 40 to 50h.
Worth it though, as I now have a solid and easy to change auth and data system I can reuse in future apps.
can you share your github link??
Flutter course completed truly awesome course about flutter + backend development also love Vandad. will surely watch his channel for more flutter stuff
This guy put 36 HOURS of Flutter courses online for FREE…
Not all heroes wear capes
I think we need to buy him one.
@@ajwright5512 wth
Really appreciated I will definitely use this course to learn flutter in my break.
Thank you so so muchh for this course. Even though you didnt have to, u provide so more information outside of flutter. I've always wondered what to do with projects that use sdk or frameworks and how I should implement git with those files. You've given me so much help. I truly appreciate it!
this Course teaches you not only how to use Flutter but also how to write code the right way with Absctract Classes and so on. The effort put in this course is insane !!! Followed the guy right away for more content.
This video will go down in internet history as one of the greatest tutorials of all time
I am almost 9hours into this course and I can surely say that Vandad really knows how to explain stuff. Any human from anywhere can understand from this guy and become better. Learning from the DRCongo.
I got a problem in hour 7:30, I connected my android phone with laptop but for the "run without debugging", it doesn't work and shows different error from the video, can I tall to you or ask for some advices? Thank you and have a nice day
@@manyuchen1511 What is the error message
lot of analyses and searches this is best for ever at the end of searching i choose this to learn from start hats off those who put effort for this ....
vandad is goated. I just finished this course and honestly bittersweet but I came out with lots of knowledge and am ready to start creating my own apps. So from bottom of my heart thank you and good luck to those taking this course its long lengthy definelty worth your time.
Was codes outdated? Or was working perfectly
Wow just amazing. I am sure tons of people must have been waiting for this course. I am definitely go through this video in full. Thank you once again.
YOU are amazing
@@andrewbrown6307 Thank you
@@A1r9u9n7 When someone asks, there is never an answer here. It almost seems like there are a LOT of "thank you so much" bots running around praising the course to the skies.
It seems to me that these are all Apple/Google bots, because it's all about paying big bucks for your developer account....
This is amazing, but as flutter is also comming for desktop and web, a good followup could be a Flutter web/desktop course too!
Your teaching speed is really nice for a beginner. I am enjoying it.
Vandad is truly an expert, thanks a lot for the course. One of the best instructors out there!
A lot of hard work has been put into this. Kudos! Now let’s see a 37 days course on anything, any takers? 😀
I am so amazed and thankful for this channel. I am not able to afford even the cheapest course (I am just gathering money for my surgery, so first thigns first). This place and your website help me to learn what I always wanted. I have never been more motivated and happy in my etire life. Thank you.
A heart for you even in your current situation and pain, I pray God see you through and more wins for you, Amen.
Hope you feel better now?
this is epic, this video should be the longest video i'v ever seen,,thanks for the effort you give a big help for everyone
This is incredible! What a great content!
Respect ❤️
Benefit of reversed domain naming is the same as ISO-8601 time - it means that if you natural sort every single app on a platform by name, all of a given developer's apps will be together, whereas if saved by sub.domain.tld there's no pattern without some additional prefix.
thanks!
Best 37 hours of my life😩😩.
If you love the simplicity of Scrimba's way of teaching, then you'll love this.
This is the first flutter course that actually went in depth and answered questions I've been asking
is it worth it to learn ? am planning to study flutter?
Dude, I just love the way you teach. And the way you laugh after you explain some terms is fucking hilarious man. Much respect to you brother!
Man explained the entire Software Engineering field in one video.
you mean 1 day
Thank you for this... This is really on another level... 37 hours course for free... Wow!!!
Thank you for this very interesting course! I have a comment regarding the usage of the 'await' keyword in functions that use Future, like the dialog function. Since these functions execute instantly without any latency (no database or API calls). This is especially beneficial when you need to use the response of the Future later in the code, and you can be confident that you already have the response when it is needed. Also Dialog will work perfectly without the keyword if the response is not needed to execute a processing later but it's just an information. Once again, thank you for your work!
20:40:09 Vandad, you're the man. I'm learning so much. Pretty much going in blind and not knowing a lot. I've tried coding at different times but never really had an in-depth study like this. Learning so much! Thank you, Vandad and FCC!
Finished watching. Thank you so much for this incredible course!
Did you get enough from this course to start working effectively?
⭐ Course Contents ⭐
⌨ (00:00:00) Introduction
⌨ (00:02:57) Developer Accounts
⌨ (00:39:12) Setup
⌨ (01:14:42) Introduction to Dart
⌨ (02:01:26) Dart Control Statements and Collections
⌨ (02:46:44) Sound Null safety in Dart
⌨ (03:27:12) Dart Enumerations, Classes and Objects
⌨ (04:18:36) Advanced Dart
⌨ (05:00:41) Project Setup
⌨ (05:48:30) iOS App Setup
⌨ (06:59:32) Android App Setup
⌨ (07:31:31) Firebase Backend Setup
⌨ (08:01:20) Basic Registration Screen
⌨ (09:04:54) Login View
⌨ (09:53:10) Separating App Initialization from Login and Register Screens
⌨ (10:19:47) Setting up Git and GitHub
⌨ (11:10:34) Email Verification View
⌨ (11:44:45) Link Between Login and Register Views
⌨ (12:18:01) Logout View
⌨ (13:13:46) Go From Login to Notes View
⌨ (13:36:43) Cleaning Up our Routes
⌨ (13:51:17) Error Handling in Login View
⌨ (14:16:21) Error Handling in Register View, Next Screen After Registration
⌨ (14:44:45) Confirming Identity Before Going to Main UI
⌨ (14:52:21) Auth Service
⌨ (15:55:22) Migrating to Auth Service
⌨ (16:33:41) Unit Testing our AuthService
⌨ (17:43:42) CRUD Local Storage
⌨ (19:30:57) Working with Streams in Notes Service
⌨ (20:04:32) Preparing Notes View to Read All Notes
⌨ (20:39:21) Preparing to Create New Notes
⌨ (21:00:16) Creating New Notes
⌨ (21:35:42) Displaying Notes in Notes View
⌨ (21:56:04) Deleting Existing Notes in Notes View
⌨ (22:40:46) Updating Existing Notes
⌨ (23:14:12) Protecting NotesService with Current User
⌨ (23:40:44) Writing Notes to Cloud Firestore
⌨ (24:58:08) Migrating to our Firestore Service
⌨ (25:22:35) Sharing Notes
⌨ (25:37:43) Introduction to Bloc
⌨ (26:24:31) Converting our Auth Process to Bloc
⌨ (27:31:17) Handling Auth Bloc Exceptions During Login
⌨ (28:52:45) Moving to Bloc for Routing and Dialogs
⌨ (28:58:23) Loading Screens
⌨ (29:48:31) Final Touches Before App Release
⌨ (30:43:03) App Icons and App Name
⌨ (31:06:34) Splash Screen
⌨ (31:56:58) Sending our iOS app to App Store Connect
⌨ (32:55:44) Releasing our iOS App
⌨ (33:20:31) Fixing Firebase Security Rules and Resubmitting the iOS App
⌨ (33:50:07) Releasing our Android App
⌨ (34:55:19) Localization in Flutter
⌨ (36:33:57) Outro
Thanks for this!
Thank you
i know this is an older video and it may be a bit late but this man did an amazing job not just teaching flutter/dart but software development as a whole. The amount of things you will learn and design patterns are just spread all over the place for you to start using early and get used to as a newbie, then find out more about them later on, and i would just like to extend a thank you for this amazing content.
Did you finish it? How "outdated" is it?
@@xenomorphisisdilage472 I finished this a while ago but not much has changed to be frank and I'd still take the course. I'm not sure about package compatibility but just ensure you use the same package versions as he does and I don't think you'll have an issu
@@xenomorphisisdilage472 i took it a while back but would say it is still fairly recent and you can figure things out if a problem does pop up. Its not really a complex project so most things will still be the same and i dont expect any issues to pop up
I was a bit intimidated by the length of this course a few weeks ago, being a total Flutter noob. So instead I went through the Net Ninja courses which are a great intro to the basics. Then that gave me the confidence to read the official docs. Then after that gave me the confidence to build very simple stuff on my own. (VERY simple, haha). Now with some basic real world experience, and confidence, I'm going to tackle this behemoth of a course. 🔥
How did it go? Where are you at in your journey?
@@richardcai363 I actually gave up on this course because the pace was too slow and was losing patience, haha. Instead, I did the Academind course on Udemy (a tad outdated, but still very good). It's longer than this video, but it's broken up into multiple fun projects which makes it more bearable to get through. So for me, my learning path: First Net Ninja to break the ice. Then went through the docs top to bottom like a book. Then tinkered around for some hands-on without following any instructions. Then Udemy (Academind). Also sprinkled in some Dart videos.
And probably most importantly during all my learning I take notes and screenshots of videos on all the things I learn as I go, organized nicely. All in MS OneNote. So when I need a refresher on any topic I actually learned (videos, docs, etc) I can find it easily in my notes. Often I'll just read the notes top to bottom to refresh/reinforce what I learned. It's almost like re-watching all the videos again, but in a very short time. :)
Currently I feel confident that I can build a small/medium app in Flutter. I have some app ideas, but I just need to get off my ass and start! Good luck with your journey!
@@JBuchmann Did you start developing any apps? It has been 6 months. Please update us.
@@MadeInPython I actually never did get to this course like I thought I would. After learning Flutter through Academind (from Udemy, highly recommend) I got caught up being too busy with normal day to day work and life in general. But I still have a few app ideas that I someday want to realize someday. And when I do, probably Flutter will be what I use.
Side note: I'm actually in the process of submitting an app to Google Play (not for production yet, but for closed testing) but is done with Angular and Ionic. When I started it's intention was to be only a web app. But then a couple years into it I realized it should be available in the app stores (so that I can charge a fee or subscription). But it would be far too much work to start from scratch in Flutter, so it's staying in Angular, haha.
I LOVE THIS GUY! Going through every problem when setting up android debugging in chapter 10 is an awesome idea. It helped me a lot. Thank you very much!))
THE BEST COURSE AND TUTOR I HAVE EVER LEARNED FROM,
BEST WISHES VANDAD! ❤❤
This is the course that I've been waiting in all of youtube. I've been watching flutter tutorials for about two years. I'm gonna be hooked on this for days. Thank you so much for this!
As an experienced developer, if you know where to skip, this is a very effective course.
PS: iOS app setup part was gold!
Where do you think we should skip?
@@moliver1695 Skip the iOS app setup if you don't own a Mac and don't plan to get one any time soon. :)
Oh my GOD 😱...such an awesome course 👏👏👏👏👏
I am now at the 20th chapter. And so far I have been enjoying the course. Very good tutorial
as a new person who barely knows how to use git ,this course took further than my expectation to just build an app now am making production ready app thank you
8:59:39
learning log:
由一個字詞以上組成變數名稱時,建議可用「Camel Case駝峰式命名規則」,每個單字第一個字大寫,讓變數名高低起伏增加可讀性。
其中,每個單字第一字母都大寫,稱為「大駝峰upper camel case」,FirstName;或第一單字小寫其餘大小,稱為「小駝峰lower camel case」,firstName
hot reload : flutter存檔時,只針對有改動的部分執行一次
Thank you very much freecodecamp for the course . Need more like these for NodeJS and Django too.
Just the course I need for me. Thanks Vandad
Wow. I stayed up for 37 hours. Thank you so much.
Absolutely Legendary! Right when I wanted an in depth Flutter course.
Same ! I'm pretty sure that they're spying on us lol
Thank you for providing this for free. It takes lot of effort to make such videos and big heart to provide it for free. Hats off!!!
Amazing tutorial. Very helpful and information filled and is approached in one of the best presentations I have seen . That being that errors and different levels of development is displayed and then compared to show beginners best practices. This should be how all lecturers or tutorial creator should approach teaching dev in general
25:18:00
A quick suggestion for windows users, if you come across any error related to running any file or code for the FIRST time then first do check the 'Environmental paths' settings and make sure that all the paths are correctly added then proceed further.
This guys are blowing my mind everyday
Very nice effort mate. Loved your content
This, sit back and have more like a conversation than a rigid tutorial type thingy about the matter in hand which is called FLUTTER ,
I LIKE IT ... I'M Loving IT...
this is a really really rich course , useful and easiest to learn the flutter!
Super grateful for this course!!!!
This is a very good flutter course. Any Kenyan or anyone in the world for that matter. I would gladly recommend this flutter tutorial. It is very well thought out and planned. Vandad, the instructor is very polite too. Thank you very much and may the Lord bless you abundantly.
I'm already a software engineer (full-stack web-dev doing django/Vue3 for a tech company somewhere) but I humbled myself and started taking this course from scratch. I'm about 1.2hrs in, Flutter totally set up on my machine, and very excited to learn from your patiently delivered wealth of knowledge. A go developer friend and I spontaneously decided to learn flutter (not just how to build amateur todo apps, but REALLY build cool things with it) just to have fun and do something different, idk lol, we must have a lot of time on our hands I guess. I'm confident that this course will be an incredible step in that direction of above-average proficiency. Wishing you the best man, and thank you for making this amazing resource available for all us grateful netizens. I feel like some of the stuff I learn here might even translate into new ideas at work. All the best: sending you good vibes!
Love this man for doing this. Thank you!
i have nothing to do with this course but
as a self taught novice ds who mostly learns from youtube videos i do appreciate every educational youtubers who are contributing the younger gen of developers, may be we're all supposed to make "international edu; youtuber day" to show our gratitude to these angles!!
(i am serious)
Any channel recs for ds?
Just finished the course... It took me 9 days and this is my first flutter course, vandadnp was great and I felt really emotional in the last chapter (outro) of this course like i've known the tutor all my life...Lol.
is it helpfull for flutter 3 also?
@@amitgiri6895 Not really, the course was recorded between December last year till January this year (2022) so it's still very current and can help give you a good foundation as to how flutter works basically. Then from there you can improve on yourself like I'm actually doing now....
How is your flutter journey going? I’m trying to get some motivation to not see it as daunting because it’s something I’d really love to do
When testing the auth changes around the 16:29:10 mark my terminal shows the auth exceptions but the emulator still processes the information. For instance I enter an invalid email in the register view and when I press register the app go to the verifyEmailView, the auth exception is shown in the terminal, and forbade tries to create a user. No error dialog is shown either. What am I missing here?
Üstada başlangıç seviyesinde bir kurs çek demişler o da yaradılışın başlangıcından itibaren anlatmış. Şu an 127.saati izliyorum yontma taş devri bitmek üzere, 2 lekçır kaldı. :)
Güzel kurs ama çok fazla detaya giriliyor teşekkürler.
Hey I noticed you used FirebaseAuthProvider() instead of AuthenticationService.firebase() in the main.dart file. I thought the reason we created the AuthenticationService class was to avoid direct interaction with Firebase? Otherwise, thanks for the great lecture. It was very easy to follow and understand.
Would you mind formatting the timestamps so that RUclips can recognize them and split the videos timeline into chapters?
@@A1r9u9n7 I know that there are timestamps in the description, but they are wrongly formatted. Therefore RUclips cannot recognize them and split the video's timeline into chapters.
@@j3ns Why don't you be a chad and do it for others who want it? I mean they already made the 37 hour video and make many others
Maybe they'll pin you for it 😏