Complete Flutter E-commerce App - Bloc, Clean Architecture, Firebase

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ม.ค. 2025

ความคิดเห็น • 62

  • @aouadicharaf1038
    @aouadicharaf1038 หลายเดือนก่อน +1

    Thanks for having our back Madi!! ❤❤❤

  • @moheb-adel
    @moheb-adel 5 หลายเดือนก่อน +5

    best flutter instructor ever !

    • @flutterguys
      @flutterguys  4 หลายเดือนก่อน

      ❤️🤝

  • @probaldeepsaikia
    @probaldeepsaikia 4 หลายเดือนก่อน +5

    Made a book marketplace using this

  • @CHOWDHURYSHADABAIMAN
    @CHOWDHURYSHADABAIMAN 4 หลายเดือนก่อน +1

    hey your source code from "Product" part isn't updated can you kindly fix that around time frame 4:00:00 hours

    • @flutterguys
      @flutterguys  4 หลายเดือนก่อน +1

      Check main branch

  • @from_whatch
    @from_whatch 4 หลายเดือนก่อน +3

    My question 😂❤Thank you 🙌

  • @JonZuka
    @JonZuka 3 หลายเดือนก่อน

    Hello! Is the abstraction with dependency injection really necessary? We might better go into that rabbit hole once we have the need for it.

  • @ogodomoses7674
    @ogodomoses7674 5 หลายเดือนก่อน

    I love ur teaching ❤️❤️❤️❤️😍

    • @flutterguys
      @flutterguys  5 หลายเดือนก่อน

      I'm so glad! ❤️🤝

  • @mattu5089
    @mattu5089 2 หลายเดือนก่อน

    your top selling is not updated in the github, your using hexCode for the colors and products, mine is rgb any fix for this or update? 4:00:00
    whenever i run the app it gives me error on a file object_patch.dart:
    line 38: throw new NoSuchMethodError.withInvocation(this, invocation);
    Error
    "Exception has occurred.
    NoSuchMethodError (NoSuchMethodError: The method 'map' was called on null.
    Receiver: null
    Tried calling: map(Closure: (dynamic) => dynamic))"

  • @dawitsema88
    @dawitsema88 5 หลายเดือนก่อน

    I am really excited to watch it.

    • @flutterguys
      @flutterguys  5 หลายเดือนก่อน

      ❤️🤝

  • @ghulammehdi3154
    @ghulammehdi3154 4 หลายเดือนก่อน

    Hi Mahdi, you're an awesome instructor! I'm following all your Flutter series. I’m encountering an issue: when I navigate from the Settings Page to the Favorites Page and then click on a product to view its details, if I remove it from favorites from product detail page and then go back using the back arrow, it still appears on the Favorites Page. Could you show me how to update the previous screen or use BLoC to handle this? Thanks!

    • @flutterguys
      @flutterguys  4 หลายเดือนก่อน

      You can inject bloc provider in favorites page and then use in detail and remove item and finally inside detail again fetch favorties in this favorites page will be updated while you are in detail

  • @techinafrica6760
    @techinafrica6760 4 หลายเดือนก่อน

    which font do you use on your vscode

  • @Nishant-cx5wb
    @Nishant-cx5wb 3 หลายเดือนก่อน

    Sir, in my flutter firebase, a new database name 'Users' is not creating. Tell me the reason for this please

  • @soumyadeepghosh4428
    @soumyadeepghosh4428 4 หลายเดือนก่อน

    I really want to do native app development but I doubt if I can make stunning ui like this using jetpack compose!

  • @endrosamstrong1332
    @endrosamstrong1332 3 หลายเดือนก่อน

    best practice tutorial sir

  • @ushibuii8702
    @ushibuii8702 4 หลายเดือนก่อน

    can we do a office / hostel management app with call registry, room booking (conference rooms/ hostel rooms) , raise a request etc

  • @blackreaper2677
    @blackreaper2677 3 หลายเดือนก่อน

    hi is there any admin page??
    how to make one

  • @leomaiadev
    @leomaiadev 2 หลายเดือนก่อน

    Why did you create the AppNavigator?

    • @flutterguys
      @flutterguys  2 หลายเดือนก่อน +1

      Because I don't wanna write bunch of code for navigation everytime.

  • @tosinezekiel8
    @tosinezekiel8 4 หลายเดือนก่อน

    pls can you make the admin panel with the delivery boy app for this project?

  • @dhrubrawat9316
    @dhrubrawat9316 4 หลายเดือนก่อน

    Great video

  • @aldotugasumb2366
    @aldotugasumb2366 4 หลายเดือนก่อน

    can you give the init project github? since you already created before starting to code in the vid

    • @flutterguys
      @flutterguys  4 หลายเดือนก่อน

      No I didn't create, I created in recording

  • @ROHITCHAUHAN-bp4dt
    @ROHITCHAUHAN-bp4dt 4 หลายเดือนก่อน

    Great work sir, Can you make video for whatsup app clean architecture using bloc

  • @durrahassan5591
    @durrahassan5591 4 หลายเดือนก่อน

    can you please include Unit test

  • @shadabaiman2004
    @shadabaiman2004 4 หลายเดือนก่อน

    How can you log out

  • @shafeemahmoud5769
    @shafeemahmoud5769 3 หลายเดือนก่อน

    Watched only one hour and there are questions to your knowledge of Clean Architecture:
    Your domain layer depends on UserCreationReq which is in Data layer. Isn't it violation of Clean Architecture?
    And why do you use "extends" instead of "implements"?
    Also you don't use generics in Either.

    • @flutterguys
      @flutterguys  3 หลายเดือนก่อน

      Does the domain layer have anything to do with the implementation of UserCreationReq?
      Dependency does not mean that you should not pass a parameter.
      You can use generics Either, There is no difference
      And about using extends this is kind of futurism, Maybe we will have shared behaviors in the future.
      lemme explain difference:
      When to Use extends vs implements
      Use extends if you want to inherit behavior (i.e., shared methods and properties) from a base class. This helps when multiple subclasses will have similar behavior and don’t need to reimplement the same logic.
      Use implements when you want to enforce that a class adheres to a specific contract (i.e., an interface), but you don’t want to inherit any specific behavior from the base class. Each implementing class must define its own behavior from scratch.

    • @shafeemahmoud5769
      @shafeemahmoud5769 3 หลายเดือนก่อน

      ​@@flutterguys sorry, but this is not a production level of code. Starting from UI and ending by the architecture.
      For example, your UI code doesn't follow SOLID and clean code principles, as well as Flutter guidelines. Don't you know that returning widgets from functions isn't recommended, as it affects on performance.
      I think you're a junior+. So please be a professional, and then start recording tutorials.
      Respect your subscribers time. It's not unlimited.

    • @flutterguys
      @flutterguys  3 หลายเดือนก่อน +2

      @@shafeemahmoud5769 Thank you for your opinion
      I always believe that UI is not an important issue. You can give the UI to a junior in a team, but you cannot give the structure to a junior because refactoring and modifying UI codes is very simple and can be done at any time so you can clone and refactor the project. But you cannot refactor the project structure whenever you want. So I focus more on structure and logic.
      Dear friend, no one writes the best code, any code can be rewritten cleaner, so my goal is not to make you write the cleanest code by watching this course, anyone who claims that they follow all the principles and the cleanest code Be aware that he is a fraud. After seeing the course, you should go to see if it can be done better or not, that's all.
      Thank you again
      If the channel is not useful for you, please leave and leave the judgment for others.

  • @keithbacalso9433
    @keithbacalso9433 4 หลายเดือนก่อน

    Couldve been better if you put TDD ive been waiting for this with TDD since Retroportal's is outdated.

  • @박정현-n1s8l
    @박정현-n1s8l 4 หลายเดือนก่อน

    teacher. I hope to learn flutter based on supabase. Teacher, what do you think?

  • @SreeragNair-w9l
    @SreeragNair-w9l 5 หลายเดือนก่อน +9

    Should've added payment integration for this project

    • @lordew9476
      @lordew9476 4 หลายเดือนก่อน +1

      Of course u just need pay for transactions 20-25 cent two or three years ago😅

    • @Crescendo2000s
      @Crescendo2000s 2 หลายเดือนก่อน

      How ?​@@lordew9476

  • @moataz2415
    @moataz2415 5 หลายเดือนก่อน

    could you make a full flutter project in 4 platfroms (android/ios/desktop/web) with backend in dart fro us please
    this will be a significant help

  • @zeynalunlu8568
    @zeynalunlu8568 4 หลายเดือนก่อน

    Can I code by looking at you?

  • @ALMOUSLECKATALIBAG
    @ALMOUSLECKATALIBAG 4 หลายเดือนก่อน +1

    it's not a full functional e-com project just basic very basic no difference between admin and normal user no payment no upload product functionality

  • @kanatkudaibergenov564
    @kanatkudaibergenov564 4 หลายเดือนก่อน +7

    Why you didn't make bottom navigation bar? In 2024 bottom navigation bar is the most necessary widget, every app, okay, 90% of apps must have bottom navbar

    • @tsred8378
      @tsred8378 3 หลายเดือนก่อน

      This app is his own design. If you need a bottom navigation bar, create it yourself... Simple 😊

    • @Simomajola1
      @Simomajola1 4 วันที่ผ่านมา

      @@tsred8378😂😂😂😂😂😂

  • @ahmidosenadoro3642
    @ahmidosenadoro3642 หลายเดือนก่อน

    Why firebase and not laravel?

  • @nadetdevfullstack7041
    @nadetdevfullstack7041 5 หลายเดือนก่อน

    Excellent

    • @flutterguys
      @flutterguys  5 หลายเดือนก่อน

      ❤️🤝

  • @nhathao69
    @nhathao69 3 หลายเดือนก่อน

    You can give me a data of firebase I don't the way to add it fast.

  • @idrisdemir7659
    @idrisdemir7659 5 หลายเดือนก่อน

    👍👍👍👍

    • @flutterguys
      @flutterguys  5 หลายเดือนก่อน

      ❤️🤝

  • @tokiwotomaree9813
    @tokiwotomaree9813 หลายเดือนก่อน

    All your authrepositoryimpl do is call authfirebaseservice functions and nothing more, so why bother making authfirebaseservice? Can't you just put the code in the repository impl?

    • @flutterguys
      @flutterguys  หลายเดือนก่อน

      high-level modules should not depend on low-level modules

  • @MohitSingh-lq1ns
    @MohitSingh-lq1ns 5 หลายเดือนก่อน +1

    First Comment.

    • @flutterguys
      @flutterguys  5 หลายเดือนก่อน +1

      ❤️🤝

  • @funscape23
    @funscape23 2 หลายเดือนก่อน

    yeeah

  • @saijawake
    @saijawake 2 หลายเดือนก่อน

    Hii sir,
    I am Sai Jawake. I want some help of yours can you please provide me configuration file of your e-commerce flutter applications firebase database.
    Tommorow is my project submission, your little help will help me alot sir.
    This is what I want sir - th-cam.com/video/V13tFNFELiQ/w-d-xo.html

    • @flutterguys
      @flutterguys  หลายเดือนก่อน

      I can't do this, I have to respect privacy of users

    • @saijawake
      @saijawake หลายเดือนก่อน

      Sir, I don't want any type of data. I just want how you designed the database because the images and the product details are not coming in my project so just want to see how you declared the database schema.
      For example - product images, sizes and schema​
      Sorry, if my comment make you think that I want your project.@@flutterguys

  • @suraiyaseducationstudio3795
    @suraiyaseducationstudio3795 หลายเดือนก่อน

    ERROR:D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\firebase_core\intermediates
    untime_library_classes_jar\debug\classes.jar: D8: java.lang.NullPointerException
    ERROR:D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\cloud_firestore\intermediates
    untime_library_classes_jar\debug\classes.jar: D8: java.lang.NullPointerException
    ERROR:D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\firebase_auth\intermediates
    untime_library_classes_jar\debug\classes.jar: D8: java.lang.NullPointerException
    FAILURE: Build failed with an exception.
    * What went wrong:
    Execution failed for task ':app:mergeLibDexDebug'.
    > Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
    > Failed to transform classes.jar (project :cloud_firestore) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, com.android.build.api.attributes.AgpVersionAttr=7.3.0, com.android.build.api.attributes.BuildTypeAttr=debug, com.android.build.gradle.internal.attributes.VariantAttr=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
    > Execution failed for DexingWithClasspathTransform: D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\cloud_firestore\intermediates
    untime_library_classes_jar\debug\classes.jar.
    > Error while dexing.
    > Failed to transform classes.jar (project :firebase_auth) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, com.android.build.api.attributes.AgpVersionAttr=7.3.0, com.android.build.api.attributes.BuildTypeAttr=debug, com.android.build.gradle.internal.attributes.VariantAttr=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
    > Execution failed for DexingWithClasspathTransform: D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\firebase_auth\intermediates
    untime_library_classes_jar\debug\classes.jar.
    > Error while dexing.
    > Failed to transform classes.jar (project :firebase_core) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, com.android.build.api.attributes.AgpVersionAttr=7.3.0, com.android.build.api.attributes.BuildTypeAttr=debug, com.android.build.gradle.internal.attributes.VariantAttr=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
    > Execution failed for DexingWithClasspathTransform: D:\flutter_projects\Ecommerce-App-With-Flutter-main\build\firebase_core\intermediates
    untime_library_classes_jar\debug\classes.jar.
    > Error while dexing.
    I am getting this error. Also the storage in firebase is not free.