Master Flutter Dart Oop & State Management | Project Based
Published 8/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 21.84 GB | Duration: 36h 42m
Published 8/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 21.84 GB | Duration: 36h 42m
An online shop for selling virtual products
What you'll learn
Learn Flutter step by step
Master Dart programming language and OOP concept
Building backend step by step with visual ui
Building front end step by step
Using Riverpod for state management
Paying with Stripe payment
Requirements
It's better students have a little bit of Flutter experience
Description
This is an online learning course selling app tutorial using Riverpod state management. In this course, we focus how to build a Flutter app for selling course with Stripe payment and Laravel as backend with Restful API. State management and routing both have been done using Riverpod.It consists of Laravel backend with Firebase for basic social media login. Most of the API are built using Laravel. The backend contains multi admin( super admin panel and teachers panel) including teacher's app for chatting. We will also build the backend step by step.App Featuresonboard screenemail loginsocial media loginviewing courseplay video coursesearch courseupload course from backendview multiple teachers coursebuy course on the front endstripe paymentsuper admin panelteacher admin panelchat in user endWe used Laravel framework for building backend and API. Backend has multi user privileges. It means there are super admins and sub admins. Teachers accounts are sub admin. Super admin can observe and assign roles to the teachers or the sub admins.With this course, you will learn how to build token for your api and how to do authorization of user access using Sanctum package of Laravel.We used Laravel eloquent to work with our database from controller.By the end of this course, you will masterLaravel basics and MVCLaravel admin panel (CRUD)Laravel sanctumLaravel restful api
Overview
Section 1: Introduction
Lecture 1 Introduction
Section 2: Understanding basic state management
Lecture 2 Basic understanding of state management and setState
Lecture 3 Understanding Riverpod provider
Lecture 4 Understand StateProvider and use it
Lecture 5 Use StateProvider value across pages
Lecture 6 Wrap up stateProvider
Section 3: Welcome screen section
Lecture 7 Introduce Stack Widget
Lecture 8 Work on Positioned and Non-positioned widgets
Lecture 9 Onboarding screen and Column and reusable text styles
Lecture 10 New reusable widget in Column
Lecture 11 Column widget and reusable widgets and color
Lecture 12 Working with next button
Lecture 13 Create reusable boxShadow
Lecture 14 Jumping to next page view
Lecture 15 Understanding animation of pagecontroller
Lecture 16 Understanding const, final and immutability
Lecture 17 Immutability in flutter
Lecture 18 Work on pageview safearea and background
Lecture 19 Show dots indicator
Lecture 20 Riverpod StateProvider for dots indicator
Lecture 21 Install tools and generate providers
Lecture 22 Use the newly generated provider for dots
Section 4: Sign in screen and reusable widgets
Lecture 23 Go to sign in page
Lecture 24 Understanding Navigator push and pushNamed
Lecture 25 PreferredSize app bar
Lecture 26 Sign in social icons
Lecture 27 27. Sign in text fields and reusable image widgets
Lecture 28 28. Sign in screen and reusable text fields
Lecture 29 Sign in screen and work with the buttons
Lecture 30 Sign in screen and finish working with the buttons
Lecture 31 Sign in screen and button border
Section 5: Sign in
Lecture 32 21. Sign in screen and app bar part 1
Lecture 33 22. Sign in screen and social icon buttons part 2
Lecture 34 23. Sign in sreen and resuable buttons part 3
Lecture 35 24. Sign in screen and reusable text part 4
Lecture 36 25. Sign in screen and text field part 5
Lecture 37 27. Sign in screen and text field part 7
Lecture 38 28. Sign in screen and text field part 8
Lecture 39 29. Sign in screen forgot link part 9
Lecture 40 30. Sign in screen and login and registration button part 10
Lecture 41 31. Refactor code part 1
Lecture 42 32. Refactor code part 2
Lecture 43 33. Refactor code part 3
Lecture 44 34. Sign in bloc and states part 1
Lecture 45 35. Sign in bloc and events part 2
Lecture 46 36. Sign in bloc and create blocs part 3
Lecture 47 37. Sign in bloc and understand event handler part 4
Lecture 48 38. Sign in bloc and understand emit function part 5
Lecture 49 39. Sign in bloc and event handler part 6
Lecture 50 40. Sign in bloc and on method part 7
Lecture 51 41. Sign in controller and get bloc context and state part 1
Lecture 52 42. Sign in controller and install plugin and firebase auth part 2
Lecture 53 43. Sign in controller and firebase auth part 3
Lecture 54 44. Sign in controller and firebase project creating part 4
Lecture 55 45. Sign in controller and iOS settings part 5
Lecture 56 46. Sign in controller and text field value part 6
Lecture 57 47. Sign in controller and passing function to widgets part 7
Lecture 58 48. Sign in controller and test with data part 8
Lecture 59 49. Sign in controller and try on Android part 9
Lecture 60 50. Sign in controller and toast widget part 10
Lecture 61 51. Sign in controller and separate BlocProviders part 11
Section 6: Registration
Lecture 62 52. Register screen and route part 1
Lecture 63 53. Register screen and do ui part 2
Lecture 64 54. Register screen and do ui part 3
Lecture 65 55. Register screen and ui app bar theme part 4
Lecture 66 56. Register screen and register states part 5
Lecture 67 57. Register screen and understand immutable classes part 6
Lecture 68 58. Register screen and understand copyWith method part 7
Lecture 69 59. Register screen and create copyWith methods part 8
Lecture 70 60. Register screen and register blocs part 9
Lecture 71 61. Register screen and optional named parameter for blocs part 10
Lecture 72 62. Register screen and finish the blocs part 11
Lecture 73 63. Register screen and inject bloc part 12
Lecture 74 64. Register screen and deeper understanding copyWith method part 13
Lecture 75 65. Register controller and part 1
Lecture 76 66. Register controller and part 2
Lecture 77 67. Register controller and part 3
Section 7: Application screen
Lecture 78 68. Application screen and ui part 1
Lecture 79 69.Application screen and ui bottom navigation part 2
Lecture 80 70. Application screen and ui bottom navigation part 3
Lecture 81 71. Application screen and ui bottom navigation part 4
Lecture 82 72. Application screen and ui bottom navigation part 5
Section 8: Route section
Lecture 83 73. Route section and understand bloc and routes part 1
Lecture 84 74. Route section and understand PageEntity class part 2
Lecture 85 75. Route section and create list of routes with provider part 3
Lecture 86 76. Route section and inject bloc part 4
Lecture 87 77. Route section and onGenerateRoute part 5
Lecture 88 78. Route section and onGenerateRoute part 6
Lecture 89 79. Route section and debug route part 7
Lecture 90 80. Route section and organize files part 8
Lecture 91 81. Route section and app states part 9
Lecture 92 82. Route section and app events part 10
Lecture 93 83. Route section and bloc super constructor part 11
Lecture 94 84. Route section and set up application route part 12
Lecture 95 85. Route section and application page part 13
Lecture 96 86. Route screen and application widget botom navigation bar part 14
Section 9: Sharedpreferences
Lecture 97 87. SharedPreferences and singleton instance part 1
Lecture 98 88. SharedPreferences and setBool part 2
Lecture 99 89. SharedPreferences and getBool part 3
Lecture 100 90. SharedPreferences and remember the welcome screen part 4
Lecture 101 SharedPreferences and remember login part 5
Lecture 102 92. SharedPreferences and retreive user profile string part 6
Section 10: Homepage
Lecture 103 93. Home page and app bar part 1
Lecture 104 94. Home page and app bar part 2
Lecture 105 95. Home page and hello text part 3
Lecture 106 96. Home page and sub title text part 4
Lecture 107 97. Home page and reusable text widget part 5
Lecture 108 98. Home page and search field part 6
Lecture 109 99. Home page and search button part 7
Lecture 110 100. Home page and designSize for adaptive screen part 8
Lecture 111 Home page and slider part 9
Lecture 112 Home page and reusable slider widget part 10
Lecture 113 Home page and dots indicator part 11
Lecture 114 Home page and states part 12
Lecture 115 Home page and events and blocs injection part 13
Lecture 116 Home page and dots with states part 14
Lecture 117 Home page and section title text 15
Lecture 118 Home page and reusable section title part 16
Lecture 119 Home page and course button part 17
Lecture 120 Home page and course reusable button part 18
Lecture 121 111. Home page and course buttons refeactor part 19
Lecture 122 112. Home page and CustomScrollView part 20
Lecture 123 113. Home page and sliverGrid part 21
Lecture 124 114. Home page and understanding delegate and gridDelegate part 22
Lecture 125 115. Home page and grid text part 23
Lecture 126 116. Home page and grid text part 24
Section 11: Profile page section
Lecture 127 Profile page and create page part 1
Lecture 128 Profile page and app bar
Lecture 129 Profile page and icon and edit button part 3
Lecture 130 Profile page and listview buttons part 4
Lecture 131 Profile page and dynamic listview part 5
Lecture 132 Settings page and create files
Lecture 133 Settings page and create states, events and blocs part 6
Lecture 134 Settings page and onTap event part 7
Lecture 135 Settings page and understanding callback function part 8
Lecture 136 Settings page and app bar part 9
Lecture 137 Settings page and dialogue box part 10
Lecture 138 Settings page and remove user data on logout part 11
Lecture 139 Settings page and code refactor part 12
Lecture 140 Settings page and applicaction state reset part 13
Lecture 141 Settings page and code refactor part 14
Lecture 142 Settings page and code refactor part 15
Lecture 143 windows 11 + xampp + Laravel
Lecture 144 Backend and install laravel part 2
Lecture 145 Windows laravel admin package set up part 3
Lecture 146 Backend and remove error part 4
Lecture 147 Backend and install sanctum package part 5
Lecture 148 Backend and dummy register and login with sanctum part 6
Lecture 149 Backend build our own login api part 7
Section 12: Backend section and login and api building
Lecture 150 Backend and build our own api login part 8
Lecture 151 Backend and modify users table part 9
Lecture 152 Backend and add more database fields part 10
Lecture 153 Backend and work on access token part 11
Lecture 154 Backend and finish building our login api part 12
Section 13: Frontend and api
Lecture 155 Front end api repos and save google login data part 1
Lecture 156 Front end and login request entity part 2
Lecture 157 Front end and work on the end point part 3
Lecture 158 Front end and make a call to the api part 5
Lecture 159 Front end and hit end point part 6
Lecture 160 Front end and status code, refactor code and server url part 7
Lecture 161 Front end and more debugging on the api and database part 8
Lecture 162 Front end and finalize login api part 10
Lecture 163 Front and back end understand the complete flow
Lecture 164 Front end and get user profile part 11
Lecture 165 Front end and show name and image part 12
Lecture 166 Front end and fix avatar url part 13
Lecture 167 Front end and fix null value issues part 14
Section 14: Backend and api test
Lecture 168 Back end and build ui part
Lecture 169 Back end and work on ui grid view part 2
Lecture 170 Backend and understand the migration part 3
Lecture 171 Backend part and doing migrations part 4
Lecture 172 Backend and CourseTypeController detail and index method part 5
Lecture 173 Backend and create draggable menu category part 6
Lecture 174 Back end and better understanding for grid, show and detail part 7
Lecture 175 Backend and create migration for coure part 8
Lecture 176 Backend and create CourseController part 9
Lecture 177 Backend and update CourseController form method part 10
Lecture 178 Backend and work on the form method part 11
Lecture 179 Backend and finish the form method part 12
Lecture 180 Backend and upload course and Windows and Mac settings part 13
Lecture 181 Backend and larvel admin command line interface part 14
Lecture 182 Backend and create a new CourseController part 15
Lecture 183 Backend and finish working on CourseController part 16
Lecture 184 Backend and show image in the row part 17
Lecture 185 Backend and understand api section part 18
Lecture 186 Backend and changes in RouteServiceProvider part 19
Lecture 187 Backend and finish work on courseList method part 20
Lecture 188 Backend and understand select () and get() differences part 21
Lecture 189 Backend and access the api from the frontend part 22
Lecture 190 Backend and understand the api security part 23
Section 15: Front end again
Lecture 191 Frontend and formatting data part 1
Lecture 192 Frontend and backend error handling part 2
Lecture 193 Front and finish states, events and blocs for Home page part 3
Lecture 194 186. Home page and show data and pictures from backend using bloc part 4
Lecture 195 Home page and prevent unnecessary call part 5
Lecture 196 Home page and reset the dots part 7
Lecture 197 Home page and HomePageDots part 8
Lecture 198 Home page and learn about BlocObserver part 9
Lecture 199 Detail page and create blocs and routes part 1
Lecture 200 Detail page and pass id as arguments part 2
Lecture 201 Detail page and singleton class part 3
Lecture 202 Detail page and implement singleton class and prevent unnecessary api call
Lecture 203 Detail page and build app bar part 5
Lecture 204 Detail page and show image part 6
Lecture 205 Detail page and show author button part 7
Lecture 206 Detail page and build reusable widgets part 8
Lecture 207 Detail page and draw text and button part 9
Lecture 208 Detail page and listview items part 10
Lecture 209 Detail page and show lesson list part 11
Section 16: Backend api building and postman
Lecture 210 Backend build api and test with postman part 1
Lecture 211 Backend and course detail api part 2
Lecture 212 Back end and create paycontroller part 3
Lecture 213 Backend and work on checkOut end point part 4
Lecture 214 Backend and checkOut with query part 5
Lecture 215 Backend and build order model part 6
Lecture 216 Backend and finish checkOut api part 6
Section 17: Frontend and show data
Lecture 217 Front end and course detail controller part 1
Lecture 218 Front end and work on detail course bloc and ui part 2
Lecture 219 Front end bloc check null value part 3
Lecture 220 Front end and show dynamic values for course part 4
Section 18: Go buy button and payment
Lecture 221 Front end and goBuy button and stripe url part 5
Lecture 222 Front end and paywebview part 1
Lecture 223 Front end and paywebview blocs part 2
Lecture 224 Front end and paywebview part 3
Lecture 225 Front end and show webview with bloc part 5
Lecture 226 Front end and reusable app bar part 6
Lecture 227 Front end and back end web hook part 7
Lecture 228 Front end and back end create more end points part 8
Lecture 229 Front end and back end done with payment part 9
Lecture 230 Front end and deal with status code 400 part 10
Lecture 231 Front and get callback message part 11
Lecture 232 Front end and pay and repay issue solved part 12
Section 19: Order page
Lecture 233 Backend and show orders part 1
Lecture 234 Backend and show orders with buyer part 2
Lecture 235 Backend and show orders with status part 3
Lecture 236 Backend and lesson migrations part 1
Lecture 237 Backend and lesson controller form method part 2
Lecture 238 Backend and lesson controller and upload part 3
Lecture 239 Backend and set and get video attributes part 4
Lecture 240 Backend and done uploading medias part 5
Lecture 241 Backend and build lesson end points part 6
Lecture 242 Backend and work on the json format part 7
Lecture 243 Backend and understand the form submission problem part 8
Lecture 244 Backend and understand the form submission issue part 8
Lecture 245 Backend and form submission saving method part 9
Lecture 246 Backend and understand media info part 10
Lecture 247 Backend and finish form editing part 11
Section 20: Front end last part play video
Lecture 248 Frontend and work on lesson blocs part 1
Lecture 249 Frontend and load lesson data from the api part 2
Lecture 250 Frontend and show lesson data on ui part 3
Lecture 251 Frontend and refresh indicator part 4
Lecture 252 Frontend and build lesson detail blocs part 5
Lecture 253 Frontend and lesson controller part 6
Lecture 254 Frontend and set up blocs and routes and ui part 7
Lecture 255 Frontend and work on video player part 8
Lecture 256 Frontend and lesson video player understanding 9
Lecture 257 Frontend and play video part 10
Lecture 258 Frontend and play video with buttons part 11
Lecture 259 Frontend and iOS video play issue part 12
Lecture 260 Frontend and draw list of videos part 13
Lecture 261 Frontend and play on button click part 14
Lecture 262 Frontend lesson detail and code refactor part 15
Lecture 263 Frontend and lesson detail video buttons part 16
Lecture 264 Frontend and lesson detail video index state part 17
Lecture 265 Frontend and lesson detail auto play video part 18
Section 21: Wrap up and complete resources
Lecture 266 Here's the wrap video
For beginners to advanced learners