Flutter Mobile App + Node.js Back End Tutorial โ€“ Code an Amazon Clone [Full Course]

freeCodeCamp.org

Build a full stack e-commerce app with Flutter, Javascript, Node.js, Express, MongoDB and Mongoose.

In this tutorial, you’ll learn to build the UI of Amazon from scratch, create REST APIs, store data in MongoDB using Mongoose, use REST APIs with Flutter & Dart using Models, use the Flutter State Management tool as a provider, and create a cross platform app that works on Android and iOS.

๐Ÿ’ป Source Code: https://github.com/RivaanRanawat/flutter-amazon-clone-tutorial
๐Ÿ’ป Colors and Images: https://github.com/RivaanRanawat/flutter-amazon-clone-tutorial/blob/master/lib/constants/global_variables.dart

โœ๏ธ Rivaan Ranawat created this course. Check out his channel: https://www.youtube.com/c/RivaanRanawat
๐Ÿ“Œ Rivaan’s Discord Server: https://discord.gg/Q8Rx8YWFVF

โญ๏ธ Course Contents โญ๏ธ
(0:00:03) Introduction & Demo
(0:01:04) Setting Up The Flutter Project
(0:05:30) Setting Up Themes
(0:09:05) Folder Structure
(0:10:31) Setting Up Routes
(0:16:58) Auth Screen UI
(0:38:57) What is Node.js
(0:39:53) Node.js Installation
(0:41:51) Initialising Node
(0:45:06) First Node.js Script
(0:46:47) NPM & Dependencies
(0:52:25) Creating Server
(0:58:39) Nodemon
(1:02:37) Create your First API
(1:08:49) Exercise 1: Create GET API
(1:09:19) Solution 1
(1:20:12) Routers
(1:17:45) Middleware
(1:21:33) Sign up Route
(1:26:31) Connecting to MongoDB
(1:33:17) Creating User Model
(1:42:34) Sign up Route cntd
(2:09:19) Connecting Sign Up Route With Client Side
(2:31:04) Adding TextField & Form Validator
(2:34:45) Sign In Route / Exercise 2
(2:37:12) Creating Sign In Route (Solution 2)
(2:47:57) Connecting Sign In Route with Client Side
(3:04:01) Persisting State
(3:25:11) Creating BottomNavBar
(3:36:33) Account Screen UI
(4:04:39) Home Screen UI
(4:41:35) Admin Screen BottomNavBar
(4:49:38) Add Product Screen UI
(5:08:21) Picking Images
(5:17:16) Admin – Selling Product
(5:28:43) Create Admin Middleware / Exercise
(5:29:24) Solution
(5:31:39) Sell Product Contd.
(5:48:36) Admin – Fetching & Displaying All Products
(6:08:39) Admin – Deleting Product
(6:17:09) Self Exercise (Add Product Realtime)
(6:17:43) Getting & Displaying Products Based on Category
(6:41:19) Searching & Displaying Products
(6:47:59) Optional Exercise (Creating Search Product API)
(7:06:14) Product Details Screen UI
(7:25:58) Rating Products
(7:31:09) Rating Product API / Exercise
(7:31:43) Solution
(7:41:00) Display Ratings
(7:50:34) Fetch Deal of The Day (Optional Exercise)
(8:05:05) Adding To Cart
(8:31:46) Displaying Cart Products
(8:52:08) Decreasing Quantity in Cart
(9:00:33) Address Screen
(9:10:53) Adding GPay/ Apple Pay
(9:32:56) Storing User Address & Ordering
(9:55:55) Viewing My Orders
(10:06:07) Viewing Order Details
(10:28:37) Admin – Viewing All Orders
(10:37:42) Admin – Change Order Status
(10:45:53) Total & Category-Wise Earnings
(11:04:34) Display Sales Chart
(11:09:44) Log Out
(11:14:29) Deployment to Heroku
(11:19:55) Testing on Android Device
(11:21:46) (Bonus) Flutter 3 (Everything Works!)
(11:24:35) Material 3

๐ŸŽ‰ Thanks to our Champion and Sponsor supporters:
๐Ÿ‘พ Raymond Odero
๐Ÿ‘พ Agustรญn Kussrow
๐Ÿ‘พ aldo ferretti
๐Ÿ‘พ Otis Morgan
๐Ÿ‘พ DeezMaster

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news