Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Flutter & Firebase Masterclass (COMPLETE PACKAGE), а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:02:47
    Welcome
  • Урок 2. 00:10:23
    Firebase Pros and Cons
  • Урок 3. 00:02:11
    Firebase Basics: Introduction
  • Урок 4. 00:04:32
    Starter project overview
  • Урок 5. 00:04:23
    Creating the Firebase project and installing the CLI tools
  • Урок 6. 00:05:10
    Configuring the Flutter app with the Flutterfire CLI
  • Урок 7. 00:08:39
    Introduction to Firebase Auth & Firebase UI Auth
  • Урок 8. 00:05:49
    Completing the email & password sign in flow
  • Урок 9. 00:04:18
    Showing the correct page when the app starts with GoRouter.redirect
  • Урок 10. 00:03:44
    Using authStateChanges() and the refreshListenable argument
  • Урок 11. 00:03:46
    Refactor: replacing singletons with Riverpod providers
  • Урок 12. 00:01:37
    Other Firebase Authentication Features: Overview
  • Урок 13. 00:05:53
    Introduction to Cloud Firestore
  • Урок 14. 00:03:06
    Installing Cloud Firestore and running on iOS and Android
  • Урок 15. 00:02:10
    Overview of the jobs page and planned CRUD operations
  • Урок 16. 00:03:34
    Adding one more route to GoRouter and updating the redirect logic
  • Урок 17. 00:06:28
    How to add a document with the FirebaseFirestore API
  • Урок 18. 00:04:39
    Using the FirebaseRepository to add jobs from the UI
  • Урок 19. 00:06:08
    Showing list items with the FirestoreListView widget
  • Урок 20. 00:05:48
    Using type-safe model classes
  • Урок 21. 00:07:01
    Adding update and delete operations
  • Урок 22. 00:03:07
    Filtering collections with `where`
  • Урок 23. 00:10:03
    Intro to Firestore security rules
  • Урок 24. 00:05:31
    Working with timestamps and sorting data
  • Урок 25. 00:03:04
    Offline mode
  • Урок 26. 00:02:32
    Pagination and the FirestoreQueryBuilder widget
  • Урок 27. 00:02:57
    Wrap Up
  • Урок 28. 00:03:10
    Section Intro
  • Урок 29. 00:01:53
    VSCode Shortcuts, Extensions & Settings for Flutter Development
  • Урок 30. 00:01:57
    Course Project on GitHub
  • Урок 31. 00:05:05
    Cloning the starter project & pubspec.yaml file overview
  • Урок 32. 00:04:31
    eCommerce app overview
  • Урок 33. 00:03:16
    Project overview: app initialization and routing
  • Урок 34. 00:04:45
    Project overview: helper classes and widgets
  • Урок 35. 00:06:49
    Project structure: features and layers
  • Урок 36. 00:04:58
    Unidirectional data flow from the data layer to the presentation layer
  • Урок 37. 00:06:50
    How to add Firebase repositories to the data layer
  • Урок 38. 00:04:42
    Updated Starter project
  • Урок 39. 00:03:42
    Section Intro
  • Урок 40. 00:10:09
    Adding Firebase to the eCommerce app
  • Урок 41. 00:06:09
    Creating an AuthRepository using the FirebaseAuth APIs
  • Урок 42. 00:07:16
    The authStateChanges() method and the User class
  • Урок 43. 00:03:08
    Testing the authentication flows with Firebase
  • Урок 44. 00:06:38
    Dealing with Firebase auth exceptions
  • Урок 45. 00:09:06
    Adding the email verification logic
  • Урок 46. 00:03:10
    Automated testing with FirebaseAuth and wrap up
  • Урок 47. 00:03:19
    Section Intro
  • Урок 48. 00:04:34
    Cloud Firestore and Firebase Storage setup
  • Урок 49. 00:10:09
    Updated starter project
  • Урок 50. 00:03:55
    Image uploads: plan of attack
  • Урок 51. 00:04:46
    Creating an ImageUploadRepository
  • Урок 52. 00:07:12
    Creating an AsyncNotifier to upload images
  • Урок 53. 00:04:23
    Creating new products as Cloud Firestore documents
  • Урок 54. 00:06:00
    Completing the image upload logic
  • Урок 55. 00:02:55
    Adding an ImageUploadService class
  • Урок 56. 00:06:12
    Adding a watchProduct method to the ProductsRepository
  • Урок 57. 00:09:05
    Cloud Firestore: realtime listeners vs one-time-reads
  • Урок 58. 00:04:33
    How to edit existing products: overview
  • Урок 59. 00:10:44
    Implementing the AdminProductEditController
  • Урок 60. 00:09:49
    Deleting products
  • Урок 61. 00:03:13
    Combining streams inside a provider with Rx.combineLatest
  • Урок 62. 00:04:39
    Image uploads: final tweaks and completed code
  • Урок 63. 00:03:52
    Basic security rules for the image upload flows
  • Урок 64. 00:05:19
    Flutter web: adding a CORS policy to a Firebase storage bucket
  • Урок 65. 00:02:04
    Wrap up & exercises
  • Урок 66. 00:02:27
    Section Intro
  • Урок 67. 00:07:36
    Initializing the Firebase Local Emulator Suite with firebase init
  • Урок 68. 00:06:24
    How to use the Firebase Emulators
  • Урок 69. 00:05:22
    Exporting and Importing data with the Firebase Emulator
  • Урок 70. 00:04:13
    Introduction to Cloud Functions and Project Setup with TypeScript
  • Урок 71. 00:06:01
    TypeScript modules basics + Running our first Cloud Function using npm
  • Урок 72. 00:09:52
    Writing a Cloud Function Trigger
  • Урок 73. 00:04:44
    Fixing the infinite loop in the Cloud Function
  • Урок 74. 00:02:50
    Introduction to HTTP callable functions
  • Урок 75. 00:08:40
    Writing an HTTP callable function to delete all documents inside a collection
  • Урок 76. 00:07:34
    Invoking an HTTP callable function from the Flutter client
  • Урок 77. 00:04:46
    Deploying Cloud Functions with the Firebase CLI
  • Урок 78. 00:03:27
    Setting a project budget in Google Cloud as a safety net
  • Урок 79. 00:03:53
    Testing the deployed functions and inspecting the Google Cloud logs
  • Урок 80. 00:01:25
    Wrap Up
  • Урок 81. 00:02:10
    Section Intro
  • Урок 82. 00:06:59
    Introduction to Custom Claims
  • Урок 83. 00:04:35
    Starter project and Firebase configuration
  • Урок 84. 00:03:44
    Running the Flutter eCommerce app with the Firebase Local Emulator
  • Урок 85. 00:09:30
    Writing a Firebase auth trigger to set the custom claims on the server
  • Урок 86. 00:06:04
    Updating the Security Rules to enable Role-Based Authorization via Custom Claims
  • Урок 87. 00:09:42
    How to show the admin UI only if the user is an admin
  • Урок 88. 00:11:59
    How to force-refresh the ID token with a Cloud Firestore Listener
  • Урок 89. 00:03:14
    Updating the GoRouter redirect code to account for the admin state
  • Урок 90. 00:06:56
    Deploying and testing the Cloud Function Trigger
  • Урок 91. 00:01:57
    Wrap Up
  • Урок 92. 00:02:26
    Section Intro
  • Урок 93. 00:03:34
    Updated Starter Project with Firebase seed data
  • Урок 94. 00:03:42
    Implementing a Shopping Cart with Firebase: Overview
  • Урок 95. 00:06:44
    Cloud Firestore Data Modeling for the Shopping Cart Items
  • Урок 96. 00:08:04
    Implementing the RemoteCartRepository with Cloud Firestore
  • Урок 97. 00:04:42
    Testing the Shopping Cart feature with Cloud Firestore
  • Урок 98. 00:09:08
    Optimizing the Cart Total Calculation with Multiple StreamProviders
  • Урок 99. 00:09:23
    How to estimate the cost of your Firebase app and minimize your Firebase bill
  • Урок 100. 00:01:07
    Wrap Up
  • Урок 101. 00:05:40
    Section Intro
  • Урок 102. 00:02:24
    How to collect payments on mobile: Stripe or IAP?
  • Урок 103. 00:02:39
    Introduction to Stripe
  • Урок 104. 00:03:55
    Overview of the Flutter Stripe package and example app
  • Урок 105. 00:03:47
    Payment flows with Stripe: conceptual overview
  • Урок 106. 00:05:12
    Updated starter project & Flutter Stripe SDK setup
  • Урок 107. 00:04:34
    Installing the Stripe Extension for Firebase
  • Урок 108. 00:04:38
    Configuring the webhook for the Stripe Extension
  • Урок 109. 00:07:36
    Creating products in the Stripe dashboard
  • Урок 110. 00:08:53
    Adding new Cloud Function triggers to synchronize the Stripe data with Firestore
  • Урок 111. 00:06:19
    Deploying and testing the new Cloud Functions
  • Урок 112. 00:03:35
    Explaining the relationship between Stripe Customers and Firebase Users
  • Урок 113. 00:05:53
    Demo: making payments on the client (mobile and web)
  • Урок 114. 00:11:13
    Overview of the client payment flows on mobile
  • Урок 115. 00:06:30
    Overview of the client payment flows on Flutter web
  • Урок 116. 00:06:59
    How to fulfil orders on the backend
  • Урок 117. 00:05:44
    Showing the updated orders page in the Flutter app
  • Урок 118. 00:03:43
    How to set and use the Stripe Secret Key with Cloud Functions
  • Урок 119. 00:03:27
    Updating the available quantity on the Stripe product metadata
  • Урок 120. 00:01:54
    Wrap Up
  • Урок 121. 00:01:32
    Section Intro
  • Урок 122. 00:02:47
    Overview of the Firebase Extensions for Full-Text Search
  • Урок 123. 00:09:18
    Installing the Algolia Extension for Firebase
  • Урок 124. 00:05:59
    Updated starter project and code walkthrough
  • Урок 125. 00:02:29
    Adding the Algolia API keys to the Flutter project
  • Урок 126. 00:04:53
    Implementing Products Search with Algolia
  • Урок 127. 00:03:55
    Removing the loading indicator for a better search UX
  • Урок 128. 00:03:24
    Using realtime updates when the query is empty
  • Урок 129. 00:05:32
    Using caching and debouncing to make fewer API calls
  • Урок 130. 00:01:48
    Wrap Up
  • Урок 131. 00:01:30
    Section Intro
  • Урок 132. 00:03:12
    Starter project and code walkthrough
  • Урок 133. 00:05:21
    Implementing the ReviewsRepository
  • Урок 134. 00:05:46
    Calculating the average rating score with Cloud Functions
  • Урок 135. 00:03:11
    Deploying the Flutter web app with Firebase Hosting
  • Урок 136. 00:02:37
    Updating the CORS policy for the deployed Flutter web app
  • Урок 137. 00:02:25
    Conclusion