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: https://github.com/vandadnp/mynotes-course

✏️ Course developed by Vandad Nahavandipoor. Check out his channel: https://www.youtube.com/channel/UC8NpGP0AOQ0kX9ZRcohiPeQ

🔗 Discord study group (for questions and answers about this course): https://discord.gg/C8UpxJyU4n
🔗 Setting up Firebase CLI and FlutterFire CLI on Windows: https://www.youtube.com/watch?v=nQ3AhFo2rKc

⭐️ 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

source

30 Comments

  1. please can someone answear my question : is it the same thing if i create a project with CDM or with vscode by ctrl+shift+P ? if yeah why many devs use CDM when it take so much time then cntrl+shift+p

  2. 7:56:40
    I'm an android reverse engineer
    extracting the firebase API key and appid is so easy
    and I think it's no problem to share that
    because it does not have any admin rights to that application
    just using it for sending logs, receiving notifications, etc.

  3. Sir, while I appreciate your noble effort to teach the world something valuable, at least for the first 30mins, you can cut 99% of whatever you said which are irrelevant to Hybrid App Dev.

  4. So a friend and I have this business idea, which we have worked on for some time now and the only step left is to develop the app, but we have no experience what so ever in coding and developing it. We have decided to spent a week on getting to learn bits of it and then decide on if we do it ourselves or outsource it. This course seems promising!

  5. I am getting the following error when trying add the firebase_core dependency :
    "Because firebase_core >=0.1.0 requires Flutter SDK version >=0.1.4 and firebase_core <0.1.0 requires SDK version >=1.8.0 <2.0.0, firebase_core is forbidden."
    Not sure about next steps, any help is appreciated.

  6. 4:08:18

    learning log:

    由一個字詞以上組成變數名稱時,建議可用「Camel Case駝峰式命名規則」,每個單字第一個字大寫,讓變數名高低起伏增加可讀性。
    其中,每個單字第一字母都大寫,稱為「大駝峰upper camel case」,FirstName;或第一單字小寫其餘大小,稱為「小駝峰lower camel case」,firstName

    hot reload : flutter存檔時,只針對有改動的部分執行一次

Leave A Reply

Please enter your comment!
Please enter your name here