Mobile E-Commerce with Flutter, Redux, and Stripe

Video Description

Build an online marketplace for your mobile apps!

About This Video

  • A Complete Masterclass on Firebase and Firestore with Flutter for building any sort of mobile store
  • Discover the Asynchronous actions in Redux with Redux Thunk and process payments in Flutter using Stripe
  • Designing attractive Flutter apps with the Material Widget library and Redux for global state management in Flutter apps

In Detail

In this course, we'll build a full-stack e-commerce mobile application from scratch, with a complete shopping cart for authenticated users as well as an entire customer checkout.

This will be a complete app with an eye-catching UI using the Flutter Material Library and Redux for global state management and Redux Thunk for async actions. This will be a complete API with custom controllers thanks to Strapi, with our app data stored in a cloud MongoDB Atlas database and user authentication with Register/Login.

We will cover the following topics in this course:

  • Async/await functions in Flutter, making authenticated requests
  • Rapidly building a highly functional REST API with Strapi
  • Managing/storing API data with the MongoDB Atlas cloud database
  • Persisting data locally in Flutter with SharedPreferences
  • Decoding/encoding and serializing/deserializing JSON data with Dart
  • Navigation/routing in Flutter
  • Using themes in Flutter to share color/text styles across apps
  • Constructing forms/managing form state in Flutter apps
  • Securely registering/logging-in users with JSON web tokens
  • Form validation/error handling in Flutter
  • Multi-child layout widgets: ListViews, GridViews, TabBars, and more
  • Custom material-theme styling
  • Formatting dates in Flutter with the Intl library

And much more!

This course will give you the core structure and techniques you need to build any sort of mobile store with Flutter, whatever product or service you sell.

Publisher Resources

Download Example Code

Table of Contents

  1. Chapter 1 : Getting Started
    1. What Tools / Services Are Needed 00:02:04
  2. Chapter 2 : Project Setup
    1. Creating Project with Flutter VSCode Extension (Quick Start) 00:04:39
    2. Creating Project with Terminal (Standard Approach) 00:05:17
    3. Overview of Completed App 00:07:15
    4. Creating our Theme 00:06:38
  3. Chapter 3 : User Authentication with Register / Login Pages
    1. Building Register Page 00:13:25
    2. Improving our Widget Tree 00:05:38
    3. Adding Form Validation, Creating Form State 00:08:37
    4. Creating Login Page, Creating Routes 00:06:58
    5. Toggle Password Text Visibility 00:05:07
  4. Chapter 4 : Integrating API and Database / Adding Auth Features
    1. Creating our API: MongoDB Atlas Database 00:10:20
    2. Registering New Users with Auth API 00:08:08
    3. Improving Registration Flow 00:10:45
    4. Handling Server Errors in UI 00:04:40
    5. Logging In Users 00:05:14
  5. Chapter 5 : Adding Redux / Redux Thunk / SharedPreferences
    1. SharedPreferences for Persisting User Data 00:10:41
    2. Redux for State Management / High Level Overview of Redux 00:06:47
    3. Setting up Redux / Redux Thunk 00:11:06
    4. Getting User Data through Redux 00:12:46
  6. Chapter 6 : Models / Serializing and Deserializing JSON / App Styling
    1. Modeling User Data: Serializing and Deserializing JSON 00:08:22
    2. Improving Products Page Structure: Adding AppBar 00:06:33
    3. Styling our App using Gradients 00:06:46
  7. Chapter 7 : Adding / Fetching Products
    1. Adding Product Content Type 00:05:21
    2. Adding Products Data: Managing User Roles & Permissions.mp4 00:08:30
    3. Using GridView Builder to Display Product Data 00:10:31
    4. Formatting Individual Products with Product Item Widget 00:09:56
    5. Modeling Product Data 00:06:37
  8. Chapter 8 : Media Queries / Hero Transitions / Logging Out Users
    1. Improving GridView : Using MediaQuery Widget for Device Orientation 00:05:32
    2. Logging Actions: State with Redux Logging Middleware 00:02:48
    3. Adding: Styling Product Detail Page 00:12:17
    4. Hero Transitions for More Engaging UX 00:03:03
    5. Logging out Users with LogoutUserAction 00:12:32
  9. Chapter 9 : Building User Cart for Storing Products
    1. Building out Cart Page 00:09:52
    2. Creating CartProducts State / Toggling, Displaying Cart Products 00:13:27
    3. Display Cart Badge: Change Cart Button Color 00:10:59
    4. Add Cart Content Type: Create User Cart upon Register 00:10:07
    5. Fetching / Updating Cart Products from Database 00:15:35
  10. Chapter 10 : Integrating Stripe / Managing Credit Cards / Product Checkout
    1. Creating Stripe Customers / Associating Users with Stripe Customer Id 00:07:26
    2. Adding Card Controller to Fetch Card Data from Stripe 00:10:58
    3. Displaying User Credit Cards in Cards Tab 00:09:08
    4. Dynamically Adding Cards with Stripe Payment Package 00:23:39
    5. Changing the Primary Credit Card 00:08:55
    6. Adding Checkout Button: Checkout Dialog 00:20:15
  11. Chapter 11 : Complete Checkout Process
    1. Building Complete Checkout Process 00:34:36
  12. Chapter 12 : Finishing our App
    1. Displaying Past Orders, Formatting Order Time 00:07:30

Product Information

  • Title: Mobile E-Commerce with Flutter, Redux, and Stripe
  • Author(s): Reed Barger
  • Release date: October 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781839215773