Udemy.Ionic-Build.iOS.Android.And.Web.Apps.with.Ionic.And.Angular-UDUMMY

Title:   Ionic - Build iOS, Android & Web Apps with Ionic & Angular
URL:     https://www.udemy.com/course/ionic-2-the-practical-guide-to-building-ios-android-apps/
Length:  20:11:17
Subs:    de-DE, en-US, es-ES, fr-FR, id-ID, it-IT, pl-PL, pt-BR

Notes:

Headline:

Build Native iOS & Android as well as Progressive Web Apps with Angular, Capacitor and the Ionic Framework (Ionic 4+).

Contents:

1. Getting Started
- 1. Course Introduction => 02:27
- 2. What Is Ionic? => 07:44
- 3. Join our Online Learning Community => Article (not included)
- 4. A Closer Look at the Ionic Platform => 04:28
- 5. What is Angular? => 03:59
- 6. Node.js Download => Article (not included)
- 7. Our First Ionic App! => 13:36
- 8. The History of Ionic => 04:02
- 9. Ionic 4+ vs Ionic 3 => 03:06
- 10. How to Build Native Mobile Apps with Ionic => 03:45
- 11. Comparing Ionic to Alternatives => Article (not included)
- 12. Course Outline => 06:23
- 13. How To Get The Most Out Of The Course => 03:02
- 14. The Course Source Code => Article (not included)
2. Angular Refresher
- 15. Module Introduction => 00:32
- 16. What is Angular? => 02:42
- 17. Angular SPAs & Ionic => 03:09
- 18. Understanding Components => 01:37
- 19. Important: Creating an Angular Project with the CLI => Article (not included)
- 20. Installing Angular with the CLI => 04:29
- 21. Installing the IDE => 04:59
- 22. Understanding the Folder Structure => 08:14
- 23. The App Component => 07:04
- 24. Creating Our First Component => 04:05
- 25. Cross Component Communication with Property Binding => 05:23
- 26. Understanding Directives & String Interpolation => 04:05
- 27. Handling User Input => 04:08
- 28. Understanding Event Binding => 02:13
- 29. Local References => 01:49
- 30. Understanding Two-Way-Binding => 05:56
- 31. Passing Data Around with Custom Events => 03:58
- 32. Implementing Routing => 07:10
- 33. Setting Up Services => 03:15
- 34. Using Services with Dependency Injection => 02:48
- 35. Working with Angular Lifecycle Hooks => 03:25
- 36. Adding a Person with Services => 02:44
- 37. Navigating between Components => 02:03
- 38. Removing Items Upon a Click => 03:08
- 39. "Push"ing Data Around with Subjects => 05:34
- 40. More on RxJS & Observables => Article (not included)
- 41. Sending Http Requests => 10:03
- 42. Showing a Placeholder Whilst Waiting for a Response => 02:05
- 43. Wrap Up => 01:17
- 44. Useful Resources & Links => Article (not included)
3. Ionic Component Basics
- 45. Module Introduction => 01:20
- 46. Core App Building Blocks => 04:26
- 47. Under the Hood of Ionic Components => 06:47
- 48. Setting Up a Non-Angular Ionic Project => 03:04
- 49. Where to Learn all about Ionic Components => 02:29
- 50. Using Basic Ionic Components => 05:11
- 51. More Basic Components => 03:23
- 52. Component Categories => 02:27
- 53. Using the Ionic Grid => 04:51
- 54. Adding Icons & Using Slots => 06:14
- 55. Using CSS Utility Attributes => 03:42
- 56. Using Ionic Elements like "Normal" HTML Elements => 04:12
- 57. Validating User Input => 02:46
- 58. Creating Ionic Elements Programmatically => 04:57
- 59. Finishing Up the Base JavaScript Logic => 03:39
- 60. Finalizing the Layout => 01:31
- 61. Use the right Ionic Import => Article (not included)
- 62. Using Controller Components => 06:28
- 63. Why Angular? => 05:29
- 64. Useful Resources & Links => Article (not included)
4. Angular + Ionic
- 65. Module Introduction => 01:44
- 66. Why Use Angular? => 02:39
- 67. Important: Creating a New Project with the CLI => Article (not included)
- 68. Creating a New Ionic Angular Project => 05:49
- 69. Important: CSS Utility Attributes => Article (not included)
- 70. Analyzing the Created Project => 05:54
- 71. How Angular & Ionic Work Together => 03:53
- 72. Important: Extra Routing Modules => Article (not included)
- 73. Adding & Loading a New Page => 07:44
- 74. Using Angular Features on Ionic Components => 05:28
- 75. Setting Up Angular Routes => 04:06
- 76. Managing State with Services => 06:21
- 77. Extracting and Displaying Route Param Data => 08:34
- 78. A Potential Bug (+ Fix) => Article (not included)
- 79. Navigating Between Pages => 05:32
- 80. Deleting a Recipe => 04:34
- 81. There's a Bug! => Article (not included)
- 82. Injecting Ionic Controllers => 03:31
- 83. Angular Components vs Ionic Components => 05:49
- 84. Wrap Up => 00:37
- 85. Useful Resources & Links => Article (not included)
5. Building Native Apps with Capacitor
- 86. Module Introduction => 00:59
- 87. General Information => 01:28
- 88. Creating an Android App => 12:33
- 89. Running the App on a Real Android Device => Article (not included)
- 90. Creating an iOS App => 09:10
- 91. Running the App on a Real iOS Device => Article (not included)
- 92. Wrap Up => 01:03
- 93. Useful Resources & Links => Article (not included)
6. Debugging
- 94. Module Introduction => 00:44
- 95. Error Messages & console.log() => 04:02
- 96. Using the Browser DevTools & Breakpoints => 02:30
- 97. Using VS Code for Debugging => Article (not included)
- 98. Debugging the UI & Performance => 02:53
- 99. Debugging Android Apps => 04:16
- 100. Debugging iOS Apps => 04:16
- 101. Wrap Up => 00:40
- 102. Useful Resources & Links => Article (not included)
7. Navigation & Routing in Ionic Apps
- 103. Module Introduction => 01:41
- 104. How Routing Work In An Ionic + Angular App => 04:37
- 105. Ionic Page Caching & Extra Lifecycle Hooks => 09:20
- 106. Planning the Course Project => 04:06
- 107. Creating Our App Pages => 07:44
- 108. MUST READ: Ionic 5 and Routing / Lazy Loading => Article (not included)
- 109. Adjusting Our Main Routing Configuration => 01:59
- 110. Understanding Ionic Tabs => 01:29
- 111. Adding Tabs to the App => 15:22
- 112. Preparing Data & Services for the Project => 05:53
- 113. Outputting "Places" => 08:12
- 114. Adding Forward Navigation => 06:21
- 115. Going Back with NavController => 07:01
- 116. Navigating via Toolbar Buttons => 03:13
- 117. A Bug with Ionic => Article (not included)
- 118. Extracting the ID of Loaded Places => 05:34
- 119. Optional: Assignment Solution Code => Article (not included)
- 120. Adding a SideDrawer => 07:00
- 121. Opening + Closing the SideDrawer => 04:46
- 122. Adding Links & Switching Pages => 04:15
- 123. Adding the Auth Service => 03:28
- 124. Adding an Auth Guard => 07:47
- 125. Opening a Modal => 06:26
- 126. Closing the Modal & Passing Data => 07:21
- 127. Wrap Up => 01:24
- 128. Useful Resources & Links => Article (not included)
8. Ionic Components Overview
- 129. Module Introduction => 01:52
- 130. Attributes & Slots => 06:09
- 131. Ionic Grid Basics => 08:35
- 132. Controlling Grid Column Sizes => 03:44
- 133. Controlling Grid Alignment => 05:29
- 134. Responsive Grid Sizing => 05:10
- 135. Grid Summary => 02:11
- 136. ion-list vs ion-grid => 03:06
- 137. ion-label & ion-item => 07:29
- 138. ion-text => 02:39
- 139. Swipeable List Items => 11:08
- 140. Swipeable Bookings => 10:12
- 141. Understanding Virtual Scrolling => 03:50
- 142. Implementing Virtual Scrolling => 05:23
- 143. Virtual Scrolling Bugs => Article (not included)
- 144. Adding Image Elements => 02:45
- 145. Segmented Buttons => 05:47
- 146. Adding a Spinner => 04:17
- 147. Using the Loading Controller => 02:36
- 148. Using the ActionSheet Controller => 06:50
- 149. Wrap Up => 01:42
- 150. Useful Resources & Links => Article (not included)
9. Styling & Theming Ionic Apps
- 151. Module Introduction => 01:12
- 152. How Styling & Theming Works in Ionic Apps => 06:44
- 153. Docs & Utility Attributes => 01:13
- 154. Setting Global Theme Variables => 03:28
- 155. Setting Global Styles => 01:18
- 156. Setting All Colors at Once => 02:35
- 157. Setting Platform-Specific Styles => 03:58
- 158. Styling Core Components with Variables => 08:13
- 159. Missing iOS Icons => Article (not included)
- 160. Adding Custom CSS Rules => 10:01
- 161. Component-specific CSS Variables => 04:32
- 162. Wrap Up => 00:40
- 163. Useful Resources & Links => Article (not included)
10. Handling User Input
- 164. Module Introduction => 01:32
- 165. User Input Requirements => 01:20
- 166. Setting Up a Form Template => 05:45
- 167. Angular 8 & @ViewChild() => Article (not included)
- 168. Adding a Template-driven Form => 07:37
- 169. Handling Validation => 06:02
- 170. Switching Between Auth Modes => 02:35
- 171. Finishing the Auth Form => 02:28
- 172. Starting Work on a New Offer Form => 03:54
- 173. Finishing the Offer Form Template => 04:22
- 174. Creating a Reactive Form => 05:21
- 175. Syncing the Form to the Template => 04:00
- 176. Finishing the New Offer Form => 04:01
- 177. Edit Form Challenge => 00:52
- 178. Adding the Edit Offer Form => 05:36
- 179. Starting with the Booking Form => 04:33
- 180. Working on the Book Place Template => 05:59
- 181. Ionic 6 & Date Controls => Article (not included)
- 182. Configuring the Date Controls => 11:44
- 183. Avoid Errors => Article (not included)
- 184. Validating & Submitting the Form => 08:12
- 185. Wrap Up => 01:26
- 186. Useful Resources & Links => Article (not included)
11. Managing State
- 187. Module Introduction => 01:05
- 188. What is State? => 04:01
- 189. Adding New Places => 12:14
- 190. Using RxJS Subjects for State Management => 08:59
- 191. Passing Data via Subjects & Subscriptions => 12:24
- 192. UI State in Action => 08:10
- 193. Updating Places => 08:40
- 194. UI State with Bookable Places => 07:01
- 195. Filtering & Navigation => Article (not included)
- 196. Booking Places => 16:05
- 197. Fixing a Bug => 00:25
- 198. Canceling Bookings => 04:54
- 199. Finishing Touches => 04:36
- 200. Useful Resources & Links => Article (not included)
12. Sending Http Requests
- 201. Module Introduction => 00:46
- 202. How To Connect to a Backend => 02:13
- 203. Setting Up Firebase => 02:11
- 204. Sending Data via Http => 07:12
- 205. Using Response Data => 03:36
- 206. Fetching & Displaying Data => 14:50
- 207. Updating Places => 06:38
- 208. Fetching Data in Multiple Places => 03:15
- 209. Loading Data in a Single Place => 06:59
- 210. Updating Places Correctly => 03:52
- 211. Error Handling => 03:27
- 212. Fetching Single Places => 06:18
- 213. Adding a Booking => 06:46
- 214. Fetching Bookings By User => 10:07
- 215. Deleting Bookings => 05:11
- 216. Wrap Up => 00:56
- 217. Useful Resources & Links => Article (not included)
13. Adding Google Maps
- 218. Module Introduction => 01:29
- 219. API Setup => 03:32
- 220. Angular 8 & @ViewChild() => Article (not included)
- 221. Adding a LocationPicker Component => 06:51
- 222. Opening the Map Modal => 03:59
- 223. Adding the Google Maps SDK => 08:44
- 224. Rendering a Map => 06:04
- 225. Picking Locations via a Click on the Map => 03:41
- 226. Finding the Address for a Place => 08:47
- 227. Fetching a Static Image URL => 07:19
- 228. Displaying a Place Preview => 05:12
- 229. Changing the Selection => 01:01
- 230. Removing the Click Listener => 02:10
- 231. Submitting the Location => 08:14
- 232. Outputting Address & Map => 03:23
- 233. Re-using the Maps Modal => 08:36
- 234. Useful Resources & Links => Article (not included)
14. Using Native Device Features (Camera & Location)
- 235. Module Introduction => 00:57
- 236. Understanding Capacitor & Cordova => 04:12
- 237. Using the Docs => 00:56
- 238. Using Capacitor v3 => Article (not included)
- 239. Using Capacitor Plugins => 06:39
- 240. Getting the User Location => 09:37
- 241. Testing the Location Feature => 06:17
- 242. Angular 8 & @ViewChild() => Article (not included)
- 243. Starting With the Image Picker => 04:26
- 244. Taking Pictures => 10:11
- 245. Avoid Distorted Pictures => Article (not included)
- 246. Detecting the Platform Correctly => 05:00
- 247. Adding a Filepicker Fallback => 04:43
- 248. Getting the Picked Image => 03:00
- 249. Converting the Image String to a File => 05:13
- 250. Storing the Image in the Form => 03:30
- 251. Capacitor v1 & PWA Elements => Article (not included)
- 252. Using PWA Elements => 04:06
- 253. Improving the ImagePicker Component => 04:46
- 254. MUST READ: Firebase Cloud Functions Billing => Article (not included)
- 255. Adding Server-side Image Uploading Code => 05:04
- 256. Adding Image Upload => 07:30
- 257. Wrap Up => 01:06
- 258. Useful Resources & Links => Article (not included)
15. Adding Authentication
- 259. Module Introduction => 00:51
- 260. How Authentication Works => 03:00
- 261. Firebase API Key => Article (not included)
- 262. Adding User Signup => 10:05
- 263. Refactoring the Authentication Code => 06:33
- 264. Adding User Login => 06:23
- 265. Managing the User with a Subject => 06:41
- 266. Storing the Token in Memory => 04:55
- 267. Using the ID Observable Correctly => 04:42
- 268. More userId Usage => 04:57
- 269. Fixing the Subscription => 00:49
- 270. Using the userId Everywhere => 05:56
- 271. Storing Auth Data in Device Storag => 04:22
- 272. Adding Autologin => 06:48
- 273. Using Autologin => 04:15
- 274. Adding a Reactive Logout System => 07:52
- 275. Adding Autologout => 08:00
- 276. Requiring the Auth Token on the Backend => 06:22
- 277. Sending the Auth Token to the Backend => 07:55
- 278. More Token Usage => 04:12
- 279. Optional: Check Auth State When App Resumes => Article (not included)
- 280. Wrap Up => 01:35
- 281. Useful Resources & Links => Article (not included)
16. Publishing the Apps
- 282. Module Introduction => 01:06
- 283. Preparing App Configs => 07:52
- 284. Custom Icons & Splash Screens => 08:53
- 285. Android Deployment => 03:54
- 286. iOS Deployment => 03:33
- 287. Web Development => 05:45
- 288. Useful Resources & Links => Article (not included)
17. Roundup
- 289. Course Roundup => 01:37
18. Bonus Content
- 290. Bonus: More Content! => Article (not included)