
Learn to build a full-stack ai e-commerce app with Flutter and Django, featuring onboarding, catalog filtering, image search with vector database, cart, checkout with Stripe, orders, and in-app support chat.
Explore the admin dashboard through a walkthrough to see the available paths and what you'll build in each backend component.
Set up the Django backend by configuring a Python virtual environment, installing PostgreSQL and Redis, and preparing pgvector, then establish project structure and dependencies for a full-stack e-commerce app.
Set up the Django backend by creating a backend folder, a virtual environment, a Django project and an accounts app, and installing Django REST framework and simple JWT for authentication.
Install and load the .env file to manage environment variables, configure secret key, debug, and hosts, then set up PostgreSQL settings and REST framework with JWT and CORS.
Extend Django's abstract base user and manager to create a custom user model using UUID as the primary key and email as the username, with create_user and create_superuser.
Extend the user model by implementing a profile with a one-to-one relationship, an avatar field, and configurable fields for size system, currency, language, and gender.
Develop account models with a json style preferences field, fcm token, and height and weight fields. Build an address model using UUIDs, a user foreign key, and default handling.
Explore building drf serializers for authentication: user, registration, login, profile, and address, with nested serialization, read-only fields, and email validation.
Apply a Django service-layer pattern to account registration via a registration view, with views handling requests and responses using the rest framework and serializers.
Create a login api view (post) with simplejwt to issue refresh tokens, authenticate users, and return profile data, while supporting profile get/patch and an endpoint to update FCM tokens.
Explore address management in a full-stack app by building API views for listing, creating, retrieving, updating, and deleting user addresses, with authenticated access and service-layer helpers.
Completes the accounts API with URL configuration and router setup, implementing delete address and set default address, authentication endpoints, profile, FCM token, addresses endpoints, API versioning v1, and drf-spectacular docs.
Configure django media and static settings, set up media routes and api documentation with spectacular, apply migrations for a custom user model, and run the dev server to test endpoints.
Learn to set up postman environments and collections, configure base and api urls, and test auth endpoints for register and login with json requests, response validations, and token handling.
Explore API testing with Postman for token refresh, logout, and profile endpoints, while setting up Django admin, creating a super user, and registering models for backend access.
Test the login and token workflow with postman, including login and token refresh. Validate protected profile and address CRUD via authenticated requests, verifying status codes and updated data.
Explore front-end setup for a Flutter clean architecture app, building core and features with user, profile, and address entities, using Equitable, enums, and robust data models for authentication.
Create auth entities, value objects, and failure classes in the domain layer, handling responses with token objects and a repository interface using typedefs for server, cache, and network errors.
Implement a structured error handling architecture using AppException and specific failure types (authentication, validation, timeout, unknown), with corresponding status codes, in server, cache, and network contexts.
Define the auth repository contract using abstract classes in the domain layer, with methods for register, login, refresh token, get and update profile, update fcm token, addresses, and logout.
Shows how to build clean architecture use cases for a Flutter and Django app, including register, login, get current user, and supporting parameters, repositories, and dependency injection.
Explore building full-stack features for e-commerce apps by implementing address use cases—create, update, delete, and set default—plus refreshing tokens, updating profiles, and repository patterns using lazy singletons.
Build the data layer with models and a repository, implementing user and profile data transfer objects and JSON serialization via fromJson and toJson, aligning fields with snake_case for backend compatibility.
Continue building the flutter & django full-stack ai e-commerce app by implementing the address model, token model, and all-response model with JSON serialization and entity mapping.
Configure the app's network layer with Dio, set up the API endpoints and base URL, and implement the auth remote data source using Retrofit and shared preferences.
Implement dio interceptors to inject the access token from shared preferences, handle 401 errors, refresh tokens, queue pending requests during refresh, and retry with an updated token.
Explore generating a type-safe auth api client with retrofit, scaffolding rest api endpoints, base url, and dependency injection, and implement methods for register, login, token refresh, profile, and addresses management.
Develop and implement a remote data source using the API client to handle register, login, token refresh, profile, and address management, with error handling mapping to app exceptions.
Explore remote data source implementations for profile and address APIs by building register, login, token refresh, and profile update flows with async requests, form data, and robust error handling.
Implement complete auth remote data source methods by handling avatar uploads with multipart form data, update profile, manage FCM tokens, and CRUD address operations, plus local token storage.
Design a local data source wrapper around shared preferences to persist jwt tokens, a user, and a profile, using abstract interfaces and a concrete implementation with json encoding.
Implement an auth repository that orchestrates remote and local data sources, caches tokens and user data, and handles register and login with server and network error handling.
Develop a jwt utilities class to decode token payloads, check expiry with a 5-minute buffer, refresh tokens before ui startup, and securely cache tokens in a local data source.
Implement repository methods handling profile retrieval, caching, profile updates with null-safe json build, FCM updates, and address management via remote data sources with error handling.
Complete the auth repository by implementing address update, delete, and set default address with null-safe data mapping and backend integration via a remote data source, enabling session management.
Define the auth events in the bloc, including login, register, logout, and status check, each carrying required data like email and password and optional phone.
Explore managing auth states in a BLoC pattern—from initial to loading, authenticated, and error—using copyWith to update status, access token, profile, and addresses.
Create an auth bloc in flutter using flutter_bloc and lazy singleton for dependency injection, wiring login and register use cases, and managing loading, success, and failure states.
Learn to manage user profiles and addresses in a Flutter and Django full-stack app by implementing update profile, profile loading, and address creation and updates with immutable data.
Manage addresses in a Flutter and Django full-stack AI e-commerce app by handling delete and set default address events in a BLoC, updating local state and ensuring a single default.
Apply dependency injection in Flutter with GetIt and Injectable, create a dependency injection container, register modules and lazy singletons, and generate code for auth API clients and shared preferences.
Learners configure a Flutter app theme by defining color, size, and text style constants, integrate Inter font via pubspec.yaml, and centralize theme data for a consistent user interface.
Learn to set up a Flutter app entry point with main.dart, bloc providers, and dependency injection, initialize splash routing, and configure the system UI for portrait orientation in AI e-commerce.
Initialize Flutter binding and configure the system UI, then build a stateful splash screen as the app’s entry point. Animate the logo with a ticker, using fade and scale animations.
Define GoRouter route names and path constants in Flutter, wiring splash, onboarding, welcome, login, register, password, and home, with an auth-aware app router and redirects.
implement go router redirects, guards, and auth-based navigation to manage splash, welcome, onboarding, and home routes based on authentication state.
Implement a splash screen that reacts to authentication state changes with a BlocListener to redirect users via fade and scale transitions.
Implement a splash screen with animations and transitions, including a name display, a loading spinner, and robust startup routing based on authentication, onboarding status, and go routes.
Learn to build a multi-page onboarding in Flutter with PageView, a page controller, and a slide data model, including skip and next actions and route setup.
Build a modular onboarding flow in Flutter with a stateless onboarding page showing image, title, and description, using a page view and controller; plan to add indicators and navigation controls.
Implement onboarding with skip logic and persistent completion to reach the welcome screen. Use animated indicators and a next or finish flow linked to the current page.
Develop a responsive welcome screen in flutter with app name, subtitle, and call-to-action buttons for register and login, including navigation to auth routes and rich text for terms and privacy.
Build a register screen with a stateful form, text controllers, and a global form key; validate input, navigate on authentication, and show errors via a snackbar.
Connect the registration form to the auth bloc and manage loading states. Validate email and password, and implement a country-code drop-down for seamless onboarding.
Enable a robust registration flow with error display, success redirect, and ux polish. Validate phones, handle country codes, and connect front end to backend via bloc events for registration.
Design a robust login screen in Flutter, including an email field, form validation and error handling, decorative decorations, navigation to the password screen, and responsive layout with padding.
Develop a password screen as a stateful widget with password input, a text editing controller, and a focus node, then call the login API and navigate to home upon authentication.
Build a Flutter password screen by composing a padded column, creating a circular avatar, and implementing animated password slots with responsive width, color, and border, plus a login flow outline.
Build a password input screen in a Flutter app with a loading continue button that validates the password and triggers a login API call.
Explains building a Django catalog with a category tree and brand model, including a self-referencing category with UUID primary key, slug, images, display order, and metadata.
Build a Django product model with fields for pricing, stock, and category relationships, including gender choices, foreign keys, cascading delete, slug, indexing, and a dynamic price with discounts.
Learn Django models for product variants, including size and color choices, SKU and color hex fields, stock and price management, and robust indexes for a full-stack AI e-commerce app.
Implement wishlist and review models to manage user–product relationships with foreign keys, rating fields, and unique constraints, and provide clear string representations like user email and product name.
Develop and implement drf serializers for category, brand, image, and product variants; build recursive subcategory serialization with product counts, active filtering, and absolute image URLs.
Explore DRF serializers in action with product list and detail views, including nested category, brand, and images, plus a review serializer that flattens user emails and handles images and variants.
Build catalog views using a service layer to fetch active category trees with recursive product counts, then serialize and expose them via a rest framework endpoint.
Build a dynamic product list view in a Django API with filtering, sorting, and pagination via query parameters, supporting category, gender, price range, sizes, colors, sale, and featured.
Build a full-stack product list view with category filtering, search, price range, size and color filters, boolean flags, ordering, pagination, and serialized responses.
Fetches product detail via the API view with authentication and updates the view count within a transaction, then toggles wishlist via a post API and returns a status message.
Build a wishlist and paginated product reviews api with authenticated get endpoints to fetch a user's wishlist and 10-per-page reviews, using serializers and a catalog service.
Submit valid product reviews via a Django API with atomic transactions, update average rating and review count, and fetch autocomplete suggestions for products and categories using caching.
Explore a filter metadata API in Django, fetching min and max price, sizes, colors, and cache invalidation via signals, plus URL configuration for catalog endpoints.
Implement migrations and seed a catalog with products, categories, and brands, then verify data via Postman tests, endpoints, and filters for price, category, and gender.
Perform end-to-end catalog API testing with Postman, validating search, product details, wishlist actions, reviews, and metadata, and prepare the Flutter & Django full-stack app front end.
This lecture guides building the Flutter catalog domain layer for a full-stack app, defining category, brand, and product image entities, with Equatable integration, data mapping, and front-end structure.
Build product variant models for a full-stack ai e-commerce app by modeling a product entity, a gender enum, and fields like id, sku, color, size, price, stock, images, and variants.
Implement product filters in a full-stack flutter and django app, including a front-end ordering enum and support for price range and category, with a filters class and backend query mapping.
implement wishlist and review entities, add paginated catalog responses, and build filter metadata with color options and price range to complete the catalog domain layer.
Define the catalog repository interface to manage data operations: fetch active categories, paginate and filter products, retrieve product details, toggle and fetch wish lists, and handle reviews and metadata.
Explore catalog use cases for a Flutter and Django e-commerce app, implementing get products, get categories, get product detail, and paginated reviews with lazy singleton repositories.
Develop and organize catalog use cases for a full-stack ai e-commerce app, implementing get products with pagination and filters, search suggestions, and wishlist toggle, plus initial review data flow.
Develop data layer models for brand and category as json serializable dtos, with snake_case field renaming, and map between json and entities, including subcategories and parent id.
Define and wire data layer models for product list and detail, including subcategory and color option models, filter metadata, price range, and JSON serialization to entity.
Implement product variant and product models with JSON serialization, explicit to JSON, field rename, and size conversion, mapping images and variants to entities, including category, brand, images, and gender relations.
Build and serialize data layer models for reviews, wishlist, and search suggestions in a Flutter and Django full-stack AI e-commerce app, using JSON serializable, snake-case fields, and paginated mappings.
Outline a Retrofit-based catalog API client with endpoints for categories, products, search suggestions, filters, wishlist, and reviews, using API endpoints constants, base URL, and path parameters.
Implement a catalog remote data source using Retrofit, defining API calls for categories, products, product details, wishlist, reviews, search suggestions, and filters, wired via dependency injection and repository patterns.
Implement a catalog repository with data mapping and robust error handling for categories, products, wishlist, reviews, and filters in a Flutter and Django full-stack ai e-commerce app.
Create and manage catalog bloc events to load products with filters and pagination, load categories and category chips, and toggle wishlist items for a Flutter Django ai e-commerce app.
Explains building a single, immutable catalog state in Flutter and Dart using Equatable, with products, categories, wishlist, reviews, filters, and granular loading, pagination, and error flags for a responsive BLoC.
Explore catalog block state management in Flutter and Django: manage products, selected product, categories, wishlist, reviews, filters and loading states, with error handling, reset logic, wishlist checks, and performance optimizations.
Define the catalogue bloc with events and states, using injectable dependency injection to wire use cases for products, categories, wishlist, and product details, including loading, paging, reviews, and error handling.
Continue building the catalog BLoC by implementing load wishlist, toggle wishlist flows with optimistic UI updates and error handling, and manage paginated product reviews with page and pageSize.
Explore catalog BLoC part 3 with wishlist and review events, including creating product reviews, loading filters metadata, loading search suggestions, and code generation.
Create the Flutter app shell with a bottom navigation bar and persistent tab state using an indexed stack, including home, wishlist, support, cart, and profile screens.
Create the catalogue home screen with a header and search, using text editing and scroll controllers, manage ui state and product filters, and enable scroll-based pagination and data initialization.
Build a catalog home screen search bar widget in Flutter, handling input with a text editing controller, onChanged, clear, and filter interactions, plus app bar integration.
Connects BLoC and loading states on the catalog home screen, managing search, filters, and product loading with refresh and pagination.
Implement a Flutter search screen with a debounced search input, a suggestions list, and dynamic filters, while wiring up search history, controllers, and metadata loading.
Load and display search history using shared preferences and local storage, manage history with a search bar, and trigger product loading via the catalog block.
Build a search screen with back navigation and a dynamic body that toggles between search results, history, and recommendations, using a block builder to render products and loading states.
Build the product card widget for the search screen using a two-column grid with image, title, price, rating, and discount, plus navigate to product details and wishlist support.
Build a dynamic product card in Flutter that shows a discount badge, adds a wishlist toggle with bloc state management, and implements shimmer loading for an e-commerce app.
Build a Flutter search screen that displays product cards from state, shows search history and recommendations, and uses chips with delete to clear history and trigger searches.
Fix product card alignment and implement a recommendation and discover section in the Flutter and Django full-stack AI e-commerce search screen, reusing catalog state.
Learn to implement an active filters chips widget in Flutter, displaying and removing applied filters with a horizontally scrolling row, padding, a delete icon, and responsive styling.
Learn to create and synchronize active search filters using filter chips under the search bar, update catalog state with BLoC, and reload products when filters or search state change.
Build a horizontal subcategory chip list under the selected category in Flutter, showing subcategories when not searching, using a stateless widget and tapping to view product listings.
Swap between search results and home content in the catalog home screen using an expanded main content area, and implement a two-column product grid with loading and empty states.
Build a reusable section header widget and a category hero section on the home screen, wiring catalog state and pull-to-refresh in a Flutter Django app.
Build a horizontal categories list with lazy loading in Flutter, using a category card with image or pastel colors, a loading state, and tap to open the product list.
Build a horizontal category list in Flutter by decorating a container with box decoration, border radius, background color, and category image; display category name and product count with navigable subcategories.
Learn to display a categories bottom sheet from the home screen, implement a stateful categories bottom sheet with a header, and pass back the selected category to filters.
This lecture guides building a reusable Flutter gender toggle widget, detailing selected state visuals, color changes, padding, and a gesture detector with setState for male and female labels.
Explore building a categories bottom sheet in a Flutter app using bloc blocks to fetch catalogs, show loading indicators, and expand subcategories with interactive category items.
Build a categories bottom sheet in Flutter by rendering a decorated container with a network image and category name, expandable subcategories, and apply and reset handlers for selection.
Create a stateful product list screen with grid/list layout and filters, supporting preloaded products and infinite scrolling via a scroll controller, and load filter metadata from the catalog block.
Learn to build a Flutter product list screen with scaffold and appbar, implement infinite scroll pagination, and handle preloaded products, loading and empty states, plus refresh behavior.
Explains completing the product list screen with BLoC integration and testing, detailing a grid view with sliver delegate, dynamic item loading, and category filters with a bottom-sheet filter UI.
Explore building part 1 of the Flutter filters bottom sheet for a full-stack AI e-commerce app, implementing product filters, price range, sort options, and quick filters with apply and reset.
Build a filters bottom sheet in Flutter with a block builder linked to catalog state, rendering a gender section and interactive chips that update filters.
Employ a range slider to build a price range filter in the Flutter bottom sheet. Pull minimum and maximum prices from metadata and update filters on change.
Develop a Flutter color filter bottom sheet by listing available colors from metadata as circular swatches. Update the selected colors with a gesture detector and hex parsing.
Implement a bottom sheet filter panel in a Flutter app, adding sort by options via a radio list and quick filters via checkboxes, with an apply filters action.
Develop a Flutter product details screen with a hero image and scroll layout, fetch product details and reviews via the catalog block using the route-provided id, and prepare for recommendations.
Create a reusable Flutter product image app bar with a stateful widget, a page controller and page view for multiple images, plus an indicator row inside a sliver app bar.
Learn how to build a stateless Flutter product header widget featuring product name, brand, wishlist toggle, and price display with sale and discount indicators.
Create a product description widget and a product variations section that shows available colors and sizes, with a bottom sheet to select options and add to the cart.
Build the product variations user interface in Flutter by displaying available colors and sizes, with a horizontal color list, a variation button, and a view all variations flow.
Explore building a variations bottom sheet to choose color and size for a product, using a show variations sheet flow and passing the selected variant and quantity to the cart.
Explore building a draggable bottom sheet in flutter, with an 85 percent height container, a handle, product image and price row, and setup for color options in the next part.
Explore color options in the Flutter bottom sheet for a full-stack AI e-commerce app. Build a horizontal color list with gesture selection and responsive borders and sizes.
Build a flutter bottom sheet quantity selector with increment and decrement controls, a styled quantity display, and stock status based on the selected variant.
Build and refine a variations bottom sheet in Flutter, featuring a padded container with shadow, two action buttons (add to cart and buy now), and snackbar feedback.
Build a reusable product specifications widget in Flutter, rendering a key-value table with category, brand, gender, and material. Includes a size guide section with a bottom sheet interaction.
Builds a size guide bottom sheet part 1 with 75% height, a header, and a scrollable measurement table for bust, waist, and hips.
Build a Flutter size guide bottom sheet, with XS–2XL size rows (bust, waist, hips) and a reusable measurement guide widget featuring icons and descriptions.
Build a Flutter size guide bottom sheet by styling a container with app colors, border radius, and icons, and display measurements, fit notes, and sizing tips.
Develop a Flutter reviews section widget that displays a rating breakdown bar and a top reviews preview, taking a product, its reviews, and a callback for viewing all reviews.
Builds a sticky bottom sheet for add to cart and buy now, passes product data to the reviews screen, and enables wishlist interactions in a Flutter & Django app.
Build a paginated product reviews screen with endless scrolling, using a scroll controller and init state to load product reviews via the catalog block across pages.
Explore building a review card widget in Flutter, featuring avatar with initials, color-coded avatar, user display name, star ratings, date, and a verified badge, plus load indicators in the list.
Complete the reviews feature by building a rating stars widget, implementing time-ago date formatting, and wiring the reviews screen and routes in the Flutter and Django e-commerce app.
Create a flutter wishlist screen as a stateful widget that loads data from catalog block, shows items with image, name, and price, supports refresh, empty and error states, and recommendations.
Build a wishlist item card in Flutter, displaying product image, delete icon, price change badge, and a move to cart action with variance handling.
Develop a Django recommendations app with a user interaction model for collaborative filtering. Capture views, wishlists, carts, purchases, and reviews with weighted scores to power personalized and similar product suggestions.
design and implement a django-based recommendation system with a cache table for personalized, similar, and trending recommendations, plus product similarity and trending tables with precomputed scores.
build a similar products endpoint with an API view, a recommendation service, and Redis caching to serve vector similarity based results for e-commerce products.
Provide a similar products fallback from the same category, excluding the current product, with image and variant prefetch, and cache trending products by category for 24 hours.
Develop a Django trending products API by filtering items, computing a weighted score from views, wishlists, carts, and purchases, then fetch, sort, cache, and serialize results with category filters.
Build a personalized recommendations endpoint for you by merging collaborative filtering with content-based signals, using an authenticated get method, Redis caching, and category-aware product retrieval.
Combine collaborative filtering with content-based signals to build personalized recommendations by balancing user history and preferred categories, using trending products and fallback logic when history is absent.
Explore building a Redis-backed refresh endpoint for user recommendations in Django, including pattern-based cache invalidation, service-driven refresh, and URL configurations for for you, trending, and similar recommendations.
Seed catalog 2 and related data, including users, categories, images, brands, and products. Test all recommendation endpoints with Postman, validating trending, similar, and personalized results without duplicates.
Implement a Django image optimization service that creates thumbnail, small, medium, and large variants, converts to webp, and caches URLs for on-demand, lazy generation.
Resize images with thumbnail preserving aspect ratio, convert to webp or jpeg via high quality downsampling, store in memory buffers, cache optimized URLs, and deliver responsive image data for frontend.
Add an image URL DRF serializer method field, build absolute URLs when a request exists, and expose multiple optimized sizes (thumbnail, small, medium, large) via an image optimization service.
Build a flutter recommendation domain by creating a repository interface and use cases for get similar products, get trending products, get recommended for you, and refresh recommendations using product entity.
Build the recommendation data layer by defining a json-serializable recommendation response model with snake-case fields, and implement a retrofit client with endpoints for similar, trending, for you, and refresh recommendations.
define and implement a remote recommendation data source with methods for similar, trending, and recommended-for-you products, leverage the api client, and include a refresh and robust server exception handling.
Implement the recommendation repository with a lazy singleton, inject a remote data source, and map results to entities by implementing GetSimilarProducts, GetTrendingProducts, GetRecommendedForYou, and refresh recommendations.
Define a recommendation bloc in the presentation layer to load trending, popular, similar, and personalized recommendations, with refresh and reset events for a responsive Flutter and Django e-commerce app.
Explore building a recommendation BLoC in Flutter, managing loading, loaded, and error states per section: personal, similar, trending, and more.
Build a Flutter recommendation bloc with GetIt injection and injectable for dependency injection, handling events for loading new, popular, similar, trending, and recommended products, and refresh flows via code gen.
Integrate the home screen by loading recommendations into the trending, new, and popular sections via category filters, using a circular product list with navigation to product details.
Integrate the home screen with trending, new items, most popular, and personalized for you recommendations using horizontal product lists and a product grid.
Learn to implement similar products and recommended-for-you widgets on the product detail page, loading data via recommendation blocks with max results in a Flutter and Django e-commerce app.
Synchronize frontend image fields with backend data by updating thumbnail, small, medium, and large urls and mapping them to product cards and image contexts.
Update the product variations bottom sheet to load optimized thumbnails from product images, implement color options with hex-to-color conversion, and manage selection with setState.
Create a color badge to show color swatches from hex values with names in the variations section, including a long-press tooltip, and switch images to cached network images.
Integrate cached network image in Flutter to load product images with thumbnail loading, memory and disk caching, placeholders, and lazy loading.
Design and implement Django cart and cart item models with UUID primary keys, one-to-one user relations, and price snapshots to support cart management, quantity updates, and checkout workflows.
Build the order model with a status lifecycle, address snapshot as json field, an auto-generated order number, and a payment reference; include payment method and status choices and money fields.
Define and migrate order item, tracking, and shipping models in Django to preserve order snapshots and enable real-time shipping status tracking in a full-stack Flutter and Django e-commerce app.
Build cart and cart item serializers with nested product variant details and flattened fields. Use serializer method fields to generate absolute image URLs from the request context for front-end consumption.
Explore building order serializers for list and detail views, integrating nested order items, tracking events, and shipping methods, with comprehensive field exposure and read-only constraints.
Build the cart API with get cart and add item views using a service layer in Django REST framework. Authenticate, serialize, and validate stock to manage cart items.
Learn to manage a shopping cart with add, update, and remove operations using an order service and django rest framework, handling stock checks, serialization, and error responses.
Build a checkout workflow by clearing the cart, retrieving active shipping methods, validating the user’s shipping address and payment, and computing subtotal, shipping, and tax to create an order.
Orchestrate end-to-end order creation with stock deduction, price snapshot, and db transactions, including order item creation, stock updates, and notifications.
Create a Django REST API to fetch user order history and order details with pagination, status and order number filters, authenticated access, and nested items via prefetching.
Explore building order history and status update views with filtering and pagination in a full-stack flutter and django ai e-commerce app, including order tracking, cancellation, and notifications.
Implement order cancellation and return requests via a view with an order service and serializer, and expose an authenticated statistics endpoint with month or year filters and a category breakdown.
Configure django urls and admin, seed test orders, and implement cart and order endpoints—from get cart to checkout, tracking, and statistics, enabling testing with postman.
Test cart and checkout flows with Postman in a Flutter and Django ecommerce app, refreshing tokens, adding items by variant, updating quantities, selecting shipping methods, and creating orders.
Perform Postman testing of order history, order detail, and status endpoints in the Flutter and Django full-stack e-commerce app, validating bearer token access, pagination, shipping address, items, and status updates.
Define cart item, cart, order item, and order statistics entities for the front-end order domain, with back-end serializers and domain, data, and presentation layers.
define shipping address and order item entities with equatable, map backend and frontend order status codes via enums, with displayName and getCode getters.
Define the order domain with payment method and status enums, including display and code converters, and build an order entity with shipping address, items, totals, and cancel rules.
Design and implement shipping method and tracking event entities in a Flutter and Django full-stack ai e-commerce app, including equatable models, enums, and backend code mappings.
Define an abstract order repository to manage cart operations and order workflows. Implement methods for cart updates, shipping methods, checkout, order retrieval and tracking, cancellation, and statistics.
Develop and wire core cart and order use cases for a full-stack ai ecommerce app, including add to cart, get cart, checkout, clear cart, cancel order, and order details.
Build use cases for get order tracking by number, get orders, shipping methods, and update cart items using lazy singletons and an order repository.
Build and serialize cart and order data models in the data layer, implementing cart item, cart, and order item models with json serialization, snake case keys, and entity mapping.
Create and serialize order data models, including shipping address, shipping method, order items, status, and payment details, with from JSON and to JSON support and snake_case field renaming.
Develop and map the order data model by integrating status, shipping address, and item models; implement from JSON and to JSON serialization, including paginated order responses.
Design and implement cart and order endpoints and a retrofit-based api client, adding, updating, deleting cart items, handling shipping methods, checkout, and order statistics.
Create a JSON-serializable order statistics model with to JSON and from JSON mappings, including category breakdown, and implement get order statistics in orders API client with month and year queries.
Define and implement an order remote data source, outlining abstract cart operations, shipping methods, checkout, and order tracking with the order API client.
Develop remote data source methods for cart and order management, including remove and clear cart, shipping, checkout payload, order tracking, details, cancellation, and statistics with error handling.
Build an order repository implementation as a singleton, wire a remote data source, and implement cart, checkout, order retrieval, and statistics with entity mapping.
Define and manage cart and order actions in the presentation layer by introducing order events for adding, updating, and removing cart items, loading shipping, processing checkout, and tracking orders.
Create a single order state class extending equatable to manage cart data, shipping methods, orders, and order detail, with loading flags, error strings, and a copy width for immutability.
Builds the order bloc for a full-stack e-commerce app, wiring events and states, injecting dependencies, and implementing cart handlers such as load cart and add, update, remove items.
Implement a Flutter and Django full-stack checkout flow with an order BLoC to update, remove, and clear cart items, load shipping methods, and place orders.
Build and manage an order history with pagination and refresh using a Flutter BLoC to load orders, handle failures, and support order detail and statistics in an e-commerce app.
Master completing order cancellation in a Flutter BLoC, handling on cancel by id, state updates, result handling, and updating the orders list with GetIt and code generation.
Build the cart screen UI as a cut screen showing an empty cart with zero items, shipping address, and disabled checkout, while loading order, catalog, wishlist, and recommendation via bloc.
Build the cart screen body with items, using a block builder tied to order state, show a loading indicator, handle errors with a retry, and render a shipping address section.
Build and refine the cart screen by composing a row and column layout, an address section with styling, an editable icon, and an empty-cart state with prompts to add items.
Build a Flutter cart item card for a full-stack AI e-commerce app, using a ListView.builder to display items with product image and a delete action, plus styled spacing and shadows.
Learn to build a Flutter cart item card showing product name, variations, and price with a quantity stepper, remove button, and update-item-quantity integration.
Build a wishlist section on the cart screen by creating a reusable widget that renders wishlist items from the catalog, using a horizontal list and a fixed bottom checkout bar.
Complete the cart screen by implementing a styled checkout button, disable when total is zero, and wire add-to-cart actions via the order block for full cart and checkout testing.
Implement a stateful checkout ui with shipping address selection and auto-selected default address, select shipping and payment methods, view an order summary, and compute subtotal, shipping, tax, and total.
Build checkout UI with an appbar and back button, manage the order state with a bloc, handle empty carts, and add a shipping address section with prompts to add addresses.
Build the checkout address selection and order summary review step by creating a selectable address list with radio indicators and an add address action in a flutter-based e-commerce app.
Build the checkout shipping method UI by mapping order state methods, showing a loading indicator, and enabling selection; implement the payment method section with icons and pricing.
Implement the checkout order summary with dynamic item listing (three items plus extras), a special instructions field, and a live price breakdown (subtotal, shipping, tax, total).
Build a Flutter & Django checkout by creating a reusable price breakdown widget with subtotal, shipping, tax, and total, and thoroughly test the checkout flow.
Create a stateful order detail screen that loads by order id and presents the order number, status, date, items, shipping address, and payment details, with cancel and track actions.
Implement bottom sheet order actions for the order details screen, including support, download invoice, and cancel with a confirmation dialog and state-driven loading.
Build part 3 of the order details screen in a Flutter and Django full stack AI e-commerce app, featuring an error state with retry and reusable header and card widgets.
Builds an order header card that shows the order number, date, and status with a reusable status badge; formats the date and colors the badge by status.
Build the order items section with product cards showing images, product name, variants, quantity, and amount. Use a separated list view and an order item detail card for each item.
Create a checkout view with a shipping address card and an order summary, detailing subtotal, shipping, discount, and total using Flutter widgets and styled text for clarity.
Build a Flutter payment section displaying the order’s payment method with icons, a status chip colored by pending, paid, or failed, and bottom actions based on order state.
Create a reusable order action button with label, onPressed, primary and destructive flags, and height; render as elevated or outlined in the order details screen to support a cancel dialogue.
Create an order tracking screen in Flutter by loading order details and tracking events, displaying a progress indicator, tracking history, and refresh support while handling loading, error, and empty states.
Create a step-based progress bar widget that uses tracking events to determine the delivery stage, flags failures, and renders labeled indicators for each order status from placed to delivered.
Learn to build a flutter step indicator widget and step line, with active, current, and filled states, color and border rules, and integration in a row for a progress workflow.
Build a delivery failed bottom sheet and dialog in Flutter, with a dismissible alert, delivery failed message, chat to contact support, and a copyable tracking number.
Build a copyable tracking number widget in Flutter, enabling clipboard copy and snackbar feedback within a stateless widget that formats and displays the tracking number.
Build a Flutter tracking timeline widget that maps delivery events to icons, draws a vertical connecting line, and renders a reusable timeline item for history.
Build a live order tracking screen showing a timeline of events with title, timestamp, date, and location. Test with full testing by simulating cart, checkout, and viewing the tracking timeline.
Create a Flutter profile screen with avatar, user info, and edit profile navigation, featuring activity, settings, notifications, orders, and bloc-driven data loading for trending, new, popular, and recommended products.
Build the profile screen part 2 by adding a clickable Settings icon that navigates to Settings, planning for Notifications, and rendering a greetings block in a safe area with slivers.
Test the profile screen by building a reusable my orders section widget with icons, color-coded actions, and navigation to the orders screen.
Build the MyActivity screen with a month selector, a pie chart of category spending, and order totals, loading monthly statistics and showing history.
Develop a horizontal scrollable month picker in Flutter using a block builder to handle loading statistics and error states, with back and forward arrows, month index clamping, and dynamic styling.
Build a Flutter donut chart widget to visualize spending by category, mapping API data to category models and calculating totals from order state using a custom painter and colors.
Create an interactive category breakdown using a Flutter canvas and custom paint to render a donut chart with colored arcs representing each category's percentage and amount spent in Kenya Shilling.
Build reusable Flutter order statistics cards showing total orders, completed (received) and pending (to receive) with a custom, state-driven widget and a button to navigate to the order history screen.
Build an order history screen with a scrollable, paginated list using a scroll controller and bloc to load orders, handle refresh, loading, errors, and empty states.
Build a history order card widget showing the first order image, order number, date, and a review button, connected to the full history screen routes.
Build a Flutter and Django order screen with tabs for review, to receive, and to pay; implement tab and scroll controllers, initial tab logic, and status filters to load orders.
Build the orders tab with a flutter scaffold, app bar my orders, a BuildTabBar for ToPay ToReceive ToReview, and bloc builder for order list using order block and state.
Build an interactive order list card in Flutter, featuring order id, item count, status badge, and image previews, with tap-to-view details and pay now actions using a stateless widget.
Develop a Flutter and Django full-stack AI e-commerce app by completing the orders screen with padding, edge insets, and an order action button, plus navigation to details and tracking.
Create a Django payments app that uses Stripe payment intents, tracks statuses with clear choices, supports card and M-Pesa methods, and handles webhooks, refunds, and history.
Design Django refund and webhook models to store refund data, status, reasons, and Stripe references, linked to payments, with robust indexing and idempotent webhook tracking.
Develop payment and refund serializers in Django REST framework for a Flutter and Django app, with refund fields, read-only feeds, and a payment serializer nesting refunds and calculating total refunded.
Create a Django view to generate a Stripe payment intent, validate order id, compute the amount in cents, and return the client secret and payment intent id to the frontend.
Create a secure payment details view authenticated by user, fetching payment by order and returning serialized data. Build a Stripe webhook receiver with signature verification to safely process events.
Learn to handle Stripe webhook events by saving and deduplicating with get or create, then route payment_intent.succeeded to a dedicated handler that updates payments and orders and handles failures.
Implement Stripe webhook handlers for charge succeeded, extracting card last four digits and brand, updating payment and order status, and logging tracking events. Handle refunds with idempotency and status updates.
Implement stripe webhook processing and a refund api for a full-stack e-commerce app, including payment validation, refund creation, and robust http response handling.
Explain Stripe refund creation, updating payment and order statuses, and a payment history view with filtering and pagination for a Flutter and Django e-commerce app.
Configure Django URLs for the payments app, wiring views for create intent, payment detail, history, refunds, and webhook, then set up Stripe keys, webhook secret, and migrations, admin, and testing.
Master end-to-end payment testing for a full-stack ecommerce app by creating payment intents, validating client secrets, and simulating refunds and webhooks with Stripe using Postman workflows.
Create the frontend payment feature with a refund entity, including refund status and reason enums, and map backend codes to display names in the Flutter and Django full-stack app.
Explore the Flutter payment domain by building payment and payment intent entities, enums for card and M-Pesa, status handling, and utility getters for real-time UI updates.
Explore implementing a payment repository interface with use cases to create payment intents for Stripe, fetch payments by order, paginate payment history, and process full or partial refunds.
Build the data layer by creating refund, payment intent, and payment models with JSON serialization and snake_case field names. Map data from JSON to entities and back for Stripe responses.
Define and implement the payment API client using retrofit, configuring endpoints for create payment intent, get by order, history, and refund with proper paths, queries, and base URL.
Implement and map a Flutter payment remote data source and repository. Handle creating payment intents, fetching payments and history with paging, and map Stripe errors in refunds with error handling.
Define a Flutter payment bloc with events and states, including create payment, process stripe payment, load payment by order, load payment history, and refund, while managing the payment state.
Build a payment bloc to handle events and states for creating payment intents, processing stripe payments, loading history, and refunds, with injection and code generation to wire dependencies.
Learn how to initialize the Stripe payment sheet in a Flutter app, create a UI dialog for checkout, and manage payment intent creation and error handling.
Learn to integrate and present the Flutter Stripe payment sheet, configure setup parameters, and handle success or errors—presenting the sheet, confirming payments, and navigating to order confirmation.
Configure flutter stripe with publishable key and update Android main activity and app theme to enable frontend payment with test card 4242 4242, using order status from placed to delivered.
Leverage CLIP embeddings with pgvector to enable image search and vector-based retrieval in PostgreSQL, using IVF and HNSW indexes for fast, scalable visual search.
Set up visual search by installing pgvector and clip, enabling the extension in PostgreSQL, creating a vector index on the products table, and integrating embeddings to find similar items.
Implement a visual search api by building an image upload view and a pre-processing service using pg vector embeddings, storing 512-dim image embeddings for future similar products retrieval.
Develop a clip-based visual search engine that generates 512-length image embeddings on cpu, bridging PyTorch with Django and PostgreSQL, using a singleton lazy-loaded model and pg vector storage.
Build a visual search engine with cosine similarity and pgvector by generating robust image embeddings from RGB inputs and text embeddings for efficient dot-product lookup.
Generate batch embeddings for a group of images by processing in batches, ensuring RGB formatting, normalizing features, and handling batch errors with a fallback to sequential processing to preserve alignment.
Build a hybrid visual and text search by computing embedding similarity with dot product, and fetch top matching products via pg vector in PostgreSQL using a similarity threshold.
Cache visual search results with a hash-based key in Redis to speed up CPU inference and database lookup, and provide a Django management command to index product embeddings.
Build a visual search endpoint that opens the image, computes its hash, checks the cache, generates embeddings, queries the vector store, returns serialized products with images, and handles errors.
Configure the CLIP model and generate primary image embeddings for products. Implement vector search to fetch similar items, enforce a similarity threshold, and manage caching and configuration in Django.
Test and validate visual search by uploading images and validating vector results, indexing product images with HNSW, testing via Postman, and examining embeddings and performance.
design and implement a visual search workflow in the Flutter front-end by building the repository method, the visual-search use case, and a bloc to fetch catalog products by image.
Create a visual search screen with camera and gallery entry points, including crop and edit, a circular progress indicator, and a catalog block to perform visual search and display results.
Build a visual search query section in flutter that displays the selected image, with edit and onChange actions and a loading state during processing, plus image cropping.
Implement a full image cropping workflow for the visual search screen, including cropper setup, async processing, Android and iOS UI settings, crop aspect presets, and updating the empty state UI.
Design a visual search ui in Flutter, configuring surface color, border radius, and iconography; implement empty, error, and loading states with upload, crop, and gallery options, plus animated progress.
Explores building a visual search screen with animated loading dots, image recognition, and no results state, plus edit image options and add new image, and a product grid for results.
Develop a visual search preview in Flutter that crops, zooms, and confirms an image before triggering a search, including an image picker and edit actions for similar product discovery.
Create a Flutter visual search image picker as a stateless widget with gallery and camera options, using callbacks, inside a padded, shadowed container with primary color styling.
Configure android manifest with internet, camera, and storage permissions and declare youcrop activity with portrait orientation and AppCompat theme. Enable visual search routing and image picker for cropping and search.
Discover how LangChain and LLMs power a support agent by connecting models to data sources. Learn about chains, memory, agents, and retrieval augmented generation for AI applications.
Install LangChain and dependencies, set up a Django channels ai support chat, enable natural language product search, render product cards with prices, track orders via chat, and configure env vars.
Install Daphnet and Daphne ASGI server, enable WebSocket with Django channels, configure the Serial task queue, and set env variables in .env.
Defines Django models for chat sessions and messages in a full-stack AI e-commerce app, using UUID keys, session types, JSON context, and user and order relations.
Build and configure Django REST framework serializers for chat sessions, messages, and quick replies, including product variant and product card serializers to deliver frontend-ready product data.
Implement a Django REST framework chat sessions API with a service layer to list and create sessions, including welcome messages based on session type and authenticated access.
Create authenticated chat session detail and close session API views that serialize messages and accept rating-based feedback. Implement cached quick replies by category.
create an async django channels websocket consumer to manage connect, authenticate, join a chat room, receive messages, broadcast typing indicators, and handle errors.
Implement a process user message service that validates sessions, saves messages, trims history to six entries, and initializes a long chain AI agent to route input to the AI.
Explore building a fashion e-commerce LangChain agent by wiring an LLM with tools, a search products function, and a hybrid product service to filter by price, category, and gender.
Map gender input to a target gender and update the query set for male, female, or unisex items, using trigram similarity-based fuzzy matching on name and description and vector search.
Learn to build LangChain agent tools for order lookup and account queries by wiring a catalog product search service, variant handling, and a track order plus view cart workflow.
Engineer a LangChain agent with a system prompt to define persona and UI constraints, manage chat history with a scratchpad, and post-process outputs to extract products.
Complete the AI agent by implementing response streaming and robust fallback handling, integrating fashion ecommerce agent with function calls, product data, session updates, and websocket-based typing indicators.
Authenticate websocket users with a jwt auth middleware in django channels, and configure routing and rest urls for websocket endpoints. Run migrations and asgi setup, then test endpoints with Postman.
Test the support API endpoints for sessions, messages, and WebSocket connections with Postman and token authentication; validate catalog data, serializers, currency, and chat flows.
Develop the Flutter front-end support domain for a full-stack AI e-commerce app, modeling chat session and message entities, product card and variant info, across domain, presentation, and data layers.
Define chat session entities and WebSocket events for a Flutter app, including a session type enum with support, shopping, and order, session fields, messages, timestamps, and typing or error events.
Define a support repository interface backed by a REST and WebSocket API, stipulating abstract methods for sessions, session details, feedback, quick replies, and real-time message streams.
Build and connect support use cases for a full-stack AI e-commerce app, including close and create sessions, connect to chat, and fetch quick replies with a lazy singleton repository pattern.
Develop and wire support use cases for a full-stack ai e-commerce app, including getSessionDetail, getSessions, sendChatMessage, and typing indicator, readying the domain layer.
Create product card, message, and quick reply models, annotate as json serializable, map to and from json, and configure keys like available sizes, colors, and in stock.
continue completing model serialization in part 2 by building chat data models for the flutter and django app, implementing json serialization, field rename, snake case keys, and from_json to_json mappings.
Define support api endpoints and build a retrofit api client in flutter, including chat sessions, quick replies, session management, and feedback integration.
Implement remote data source methods for chat sessions, including get sessions, create session, get session detail, close session, submit feedback, and fetch quick replies via rest api.
Define an abstract WebSocket data source, implement connect, send message, and typing. Expose a WebSocket events stream, and have the concrete class initialize a WebSocket channel and decode messages.
Learn to handle WebSocket streams with event types such as user message received, AI typing, and user typing; implement json encoding, model conversion, error handling, and reconnection logic.
Implement a lazy singleton support repository integrating remote and websocket data sources, map models to entities, and support sessions, quick replies, and websocket operations.
Define and implement bloc events for managing support sessions, chat creation, websocket connections, and real-time ai and user messages.
Define a resilient support state in a bloc with equitable value-based equality, managing sessions, current session, messages, quick replies, and real-time websocket status, typing indicators, loading flags, and error handling.
Inject and implement the support bloc to manage sessions, including loading, creating, detailing, closing, and chat interactions, while coordinating websocket connections and session messaging.
Build real-time chat with a WebSocket using the bloc pattern: connect, stream messages, map events, and handle sending with optimistic updates and rollback on failure.
Build a full-stack AI e-commerce chat feature using the support bloc with feedback and close handlers, typing status, WebSocket messages, and deduplication via code generation.
Build a Flutter session list screen with a stateful sessionListScreen, an app bar, and a bottom sheet to create new chat sessions, and fetch existing chats from the backend.
Develop the session list screen to configure customer support, shopping assistant, and order inquiry chats with icons and session types, while handling loading, errors, and empty states.
Build a dynamic Flutter session list with a new session button using ListView.builder, present session cards with icons and dates, and navigate to the session chart for full testing.
Build a Flutter chat screen as a stateful chatScreen, manage text and scroll controllers, load session detail, connect to websocket, and display left/right bubbles with product details and typing indicator.
Shows how to build the chat body with block consumer, manage scrolling and errors, and add a typing indicator powered by an animated single-ticker controller.
In this lecture, build a chat message bubble widget for a Flutter chat screen, featuring user versus agent styling, dynamic alignment, system messages, message content, and time formatting.
Implement a horizontal product carousel widget inside chat that displays AI-recommended products with image, brand, name, price, and a details arrow, scrollable at height 280.
Build a Django-based notification system with Firebase Admin SDK and Celery, enabling listing notifications, marking as read, read counts, updating preferences, and viewing notification stats.
Explore building a full-stack ai e-commerce notification system with Django models for push logs, user preferences, and promotion campaigns, including FCM integration, status flows, and targeting.
Create and configure DRF serializers for notification, notification preference, and promotional campaign models, defining exposed fields, read-only constraints, and analytics-safe endpoints.
Explore building a Django notification api with authenticated views for getting user notifications (with unread filtering and pagination), marking as read (single and all), and caching unread counts for performance.
Implements notification management in a Flutter and Django full-stack app: provide get, put, and patch on notification preferences with authentication, and add delete and stats views via notification analytics service.
Create notifications atomically with type, title, message, action data, and optional order or product, then check user preferences and quiet hours before queuing a push via Celery and Firebase.
Build a Firebase client in Django to initialize the Admin SDK with credentials, singleton pattern, and send FCM push notifications.
Learn multicast messaging to multiple devices with Firebase fcm tokens in a single batch, plus topic messaging with subscribe and unsubscribe to manage scalable audiences.
Build a Firebase multicast notification flow with a standardized payload, iOS badge, and Celery-backed retry logic using on-commit queuing for reliable push delivery.
Map order, restock, and price drop events to dynamic templates and push notifications; create promotional campaigns queued for asynchronous delivery to targeted users via FCM.
Utilize Celery tasks to handle order status change notifications and back-in-stock dispatch, running in the background with idempotency checks and restock notification to wishlist users.
Learn to implement Celery tasks for price drop alerts and review requests, plus a 90-day cleanup of stale notifications, with chunked processing and robust retry handling.
Explore implementing Django pre-save and post-save signals to track order status changes, create idempotent tracking events, update timestamps safely, and trigger notifications using Celery on transaction commit.
Register Django signals, configure notification URLs, and enable cross-app integration with Firebase app registration. Implement unread counts, mark as read, delete notifications, and schedule order alerts via Celery tasks.
Configure Celery Beat in a Django app with Redis broker, schedule restock, price drop, and send review requests, set up Firebase credentials, and run migrations for the notifications app.
Seed notification data using manage.py and test all notification endpoints in Postman, including unread, mark as read, and delete, while validating admin, serialry tasks, and token refresh.
Flutter notification feature with domain, presentation, and data structure; define notification entity and paginated notifications; implement notification type and priority enums with code converters.
Define the notification preferences entity and repository interface, including fields for order updates, promotions, restocks, price drops, quiet hours, email options, and fcm token management.
Learn to implement notification use cases in a full-stack flutter and django app, including delete notification, get notification preferences and stats, fetch paginated notifications, and update fcm token and preferences.
Build the notification data layer by creating models, repositories, and data sources, and implement json serialization for types, priorities, preferences, stats, and paginated notifications.
Build a notification retrofit api client with endpoint constants, supporting unread counts, mark all as read, per-notification read, delete, preferences, stats, and fcm token updates; register in dependency injection.
Build a notification remote data source with API calls for paginated notifications, unread counts, mark as read (single and all), delete, and manage preferences, stats, and FCM token.
Implement a notification repository using a remote data source, enabling get notifications, unread counts, mark as read, delete, update preferences, stats, fcm token, with error mapping and data conversion.
Explore building a Flutter BLoC presentation layer for notification handling, including load, mark read, delete, preferences, and FCM token updates.
Build a flutter notification bloc state by modeling the notification list, unread count, preferences, and error handling with immutable copy-with patterns, UI flags, and type-based filtering.
Build a notification bloc with events and states, using lazy singleton injection, to load with pagination, manage read counts, mark as read, delete, and handle preferences and stats.
Implement notification BLoC handlers to mark read or unmark notifications, delete items, and update the unread badge with optimistic local state changes.
Learn to implement a Flutter notification BLoC to load and update notification preferences and stats, handle backend results and errors, update FCM tokens, and reset state on logout.
Build a dynamic notification screen in Flutter by implementing a stateful widget with a scroll controller for infinite pagination, unread filtering, and type-based notification lists.
Build a Flutter notification screen that attaches a scroll listener, loads notifications from a block, and offers a UI with mark all as red, unread filters, and pull-to-refresh.
Build a flutter notification filter chips widget for a full-stack ai e-commerce app, with a stateful horizontal list for all, orders, promotions, restocks, and price drops, using onTypeSelected.
Build a Flutter notification list widget grouped by date, with load more handling, loading and error states, an empty state with show all, using ListView.separated.
Develop a notification card widget that shows an icon by type, a title, a description, and a timestamp, with swipe-to-dismiss and a tap callback using a notification entity.
Learn to implement a Flutter notification card with read/unread state, swipe-to-delete, and tap actions, including time ago formatting, priority badges, and routing.
Implement a profile screen notification bell with an unread badge by wiring a notification block, handling taps to trigger the latest notification action and render an announcement card.
Implement and test the profile notification section and the full notification screen in a full-stack Flutter app, including the announcement card, unread indicator, and navigation to details.
Build a notification deep-link router to navigate to order or product details from the action URL, parsing IDs from data or the URL and routing with named routes.
build a flutter notification settings screen that loads notification preferences with bloc, displays a structured list of preference sections under a titled app bar, and handles loading and error states.
Learn to build a reusable switch tile widget for notification preferences in a full-stack Flutter & Django app, covering order updates, promotions, restocks, price drops, reviews, and email notifications.
Explore building a quiet hours start/end time picker in a stateful Flutter widget, including time of day handling, onChanged, and a polished switch-based UI.
Implement and test the quiet hours feature in Flutter, updating start and end times, persisting to preferences, and dispatching updates through a BLoC for notification settings.
Explore setting up an FCM service in a Flutter and Django full-stack app by initializing Firebase, registering device tokens, and handling permissions for notifications with Firebase Messaging and local notifications.
Learn to initialize and handle foreground local notifications with fcm, including android and ios settings, decode payload, tap navigation, and syncing fcm token to the server.
Master firebase cloud messaging in flutter and django: handle token refresh, update backend, manage foreground, background, and terminated messages with local notifications, and support topic subscriptions.
Implement end-to-end notification testing and a project walkthrough in a full-stack Flutter & Django app by configuring Flutter local notifications and Firebase messaging, covering setup, dependencies, and checkout flow testing.
What You'll Build
You will build a complete, production-ready AI-powered e-commerce application from absolute zero — a fully functional fashion shopping app with a Django REST backend and a Flutter mobile frontend.
This is not a toy project. By the end of this course, you will have shipped a real app with a real backend, real payments, and real AI features that most developers have never built before.
The Tech Stack
Backend (Django)
Django REST Framework with a clean Service Layer architecture
JWT authentication with SimpleJWT (register, login, token refresh, logout)
PostgreSQL with pgvector for AI-powered vector similarity search
Stripe payment processing with webhooks, refunds & payment history
LangChain + LLM for an AI fashion assistant agent
Django Channels + WebSockets for real-time chat
Celery + Redis for async task processing
Firebase Admin SDK for push notifications
Image optimization with WebP conversion and thumbnail generation
Frontend (Flutter)
Clean Architecture — Domain, Data, and Presentation layers fully separated
BLoC pattern for all state management across every feature
Retrofit + Dio for type-safe API communication with JWT interceptors
GetIt + Injectable for dependency injection and code generation
GoRouter for declarative navigation with auth guards
Stripe Flutter SDK with Payment Sheet integration
Firebase Cloud Messaging (FCM) for push notifications
CachedNetworkImage for performance-optimized image loading
Features You'll Build End-to-End
Authentication System Complete user registration, login, JWT token management, profile editing, address CRUD, and FCM device token registration — fully tested with Postman.
Product Catalog Category trees, product listings with filtering by price, gender, size, color and rating, product detail pages with variants, wishlist, and a full review system with ratings. Paginated results with search suggestions and filter metadata.
AI Recommendation Engine Trending products with time-decay scoring, similar product recommendations, collaborative filtering for personalized "For You" sections, and Redis-backed caching with automatic refresh.
Cart & Checkout Session-based cart with add, update, remove and clear. Multi-step checkout with address selection, shipping method selection and order placement with stock deduction in a database transaction.
Orders & Tracking Full order lifecycle management — order history, order detail, live tracking timeline, cancellation, return requests, order statistics with a spending chart, and admin status update simulation.
Stripe Payments PaymentIntent creation, Stripe Payment Sheet in Flutter, webhook handling for success/failure/refund events, partial refunds, and full payment history — all tested end-to-end.
AI Visual Search (CLIP + pgvector) Upload any product image and find visually similar items using OpenAI's CLIP model for image embeddings stored in PostgreSQL with pgvector. Includes HNSW indexing for sub-500ms search performance.
LangChain AI Chat Support Agent A real AI shopping assistant built with LangChain that understands natural language, searches products with hybrid vector + keyword search, looks up orders, and returns product cards inside the chat UI — over WebSockets in real time.
Push Notifications (Firebase FCM + Celery) Order status notifications, price drop alerts, back-in-stock alerts, promotional campaigns, quiet hours settings, per-category notification preferences, and a full notification center with deep-link routing.
Who This Course Is For
Flutter developers who want to go beyond basic apps and build production-grade architecture
Django developers looking to add a mobile frontend and AI features to their skillset
Full-stack developers who want hands-on experience with LangChain, pgvector, and real AI integration
Developers who have done beginner courses and are ready for something that reflects real-world engineering