Code Monkey home page Code Monkey logo

shopack-app-with-clean-architecture's Introduction

ShoPack E-Commerce App Using Flutter (User App)

This app follow clean architecture proposed By Uncle Bob I used BloC as state management to improve widget rebuilding performance.

Download App

video

You can see a Demo video Here

Screenshots

onBoarding 1 onBoarding 2 onBoarding 4 Splash Screen
Screensh example shopack_user Screenshot_٢٠٢٣-om example shopack_user Screenshot_٢٠٢٣-٠١-٠٨-١٧-٥٨-١٢-٥٤٢_com example shopack_user Screenshot__com example shopack_user
Register screen login Screen forgot password Screen verify Email Screen
Screenshample shopack_user Screenshotm example shopack_user Screenshot_ example shopack_user Screenshotom example shopack_user
Reset Password screen Home Screen Shop Screen 1 shop Screen 2
Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٣٩-١٦-٣٤٤_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٤١-٢٨-١٩٩_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٤٢-٠٢-٧٢٩_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٤٤-٣٥-٣٣٩_com example shopack_user
search product Filter Product Product Detalis Screen 1 Product Detalis Screen 2
Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٤٨-٤٢-٢٣٨_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٤٩-٢٥-٠٧٩_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٥١-٥٨-٣٤١_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢٠-٥٢-١٣-٣٠٩_com example shopack_user
Write Review Product Reviews Screen Favorite Screen Cart Screen
Screenshot_٢٠٢٣-٠١-٠٩-٢١-٠٣-٠٨-٣٦٥_com example shopack_user Screenshot_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٠٧-٣٣-٨٤٠_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٧-٤٠-٣٠٧_com example shopack_user
Checkout Screen 1 Checkout Screen 2 Map Screen Search map
Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٧-٥٢-٠٥٧_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٨-١٦-٠٣٦_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٨-٤٨-٠٩٨_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٨-٣٤-٥٩١_com example shopack_user
Payment Screen 1 Payment Screen 2 Success Screen Active orders
Screenshot_٢٠٢٣-٠١-٠٩-٢١-١٩-٣٤-٩٩٩_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٢٠-٥٤-٧١٠_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٢١-٠٠-٨٦٠_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٠-٤٠-٥٣٢_com example shopack_user
Past orders Profile Screen Update Profile Screen change password
Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٠-٤٣-٦٠٠_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٧-٠٨-٧١١_com example shopack_user Screenshot_om example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٧-٣٦-٨٣٤_com example shopack_user
Dark mode sample 1 Dark mode sample 2 Dark mode sample 3 No Internet Status
Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٧-٤٨-٢٤٤_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٨-١٩-٣٥٢_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٣٨-١٢-٩٥٤_com example shopack_user Screenshot_٢٠٢٣-٠١-٠٩-٢١-٤٦-٣٧-٩٠٣_com example shopack_user

APP FEATURES

  • Authentication (Login/Register)
  • Email sign-in backed up by Reset Password
  • Beautiful onboarding layout and animations
  • Shop by category and trending products
  • Search products with Its Name
  • Filter products by ratings or price
  • Products, Favorite can be accessed in-app
  • Edit account details easily
  • Chang Password easily
  • Order products through quote based system
  • Easily editable product widgets (Cards, Slider, Grids, Lists and more!)
  • Beautiful Product pages with reviews, description and features
  • Caching data in local database (Hive)
  • Adaptive UI (changes color based on Mode dark or light)
  • Google Map (Get current Location & Search specific Location)
  • payment integration with paymob

Directory Structure

lib
├───core
│   ├───colors
│   ├───error
│   ├───local
│   ├───network
│   ├───theme
│   │   ├───bloc
│   │   └───local_theme
│   ├───usecase
│   └───utilities
├── dependency_injection.dart
├── main.dart
└───features
    ├───cart
    │   ├───data
    │   │   ├───datasource       
    │   │   └───models
    │   └───presentation
    │       ├───bloc
    │       │   └───cubit        
    │       ├───views
    │       └───widgets
    ├───favorite
    │   └───presentation
    │       ├───bloc
    │       └───views
    ├───forgotpass&verifyemail   
    │   ├───data
    │   │   ├───datasources      
    │   │   ├───models
    │   │   └───repositories     
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories     
    │   │   └───usecases
    │   └───presentation
    │       ├───forgotpass&verifyemail_bloc
    │       └───views
    ├───home
    │   ├───presentation
    │   │   ├───bloc
    │   │   └───view
    │   └───widgets
    ├───login
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositories
    │   ├───domin
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       ├───view
    │       └───widgets
    ├───payment
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositrories
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       └───views
    ├───profile
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositories
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       ├───views
    │       └───widgets
    ├───register
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositories
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       └───views
    ├───setpassword
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositories
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       └───views
    ├───shop
    │   ├───data
    │   │   ├───datasources
    │   │   ├───models
    │   │   └───repositories
    │   ├───domain
    │   │   ├───entities
    │   │   ├───repositories
    │   │   └───usecases
    │   └───presentation
    │       ├───bloc
    │       ├───views
    │       └───widgets
    └───splash&onboarding
        ├───data
        │   └───models
        └───presentation
            ├───views
            └───widgets

.env file example

CLOUDINARY_NAME=<Your Cloudinary name>
CLOUDINARY_API_KEY<Your Cloudinary API key>
CLOUDINARY_SECRET_KEY=<Your Cloudinary Secret key>
MAP_API_KEY=<Your Google Map Api key>
PAYMENT_API_KEY=<Paymob Api Key>
INTEGRATION_ID_CARD=<Paymob Integration Id  Card>
BASE_URL=https://newshopack.onrender.com/api/v1   //API Base Url

shopack-app-with-clean-architecture's People

Contributors

mahmoudagha01 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

shopack-app-with-clean-architecture's Issues

backend of project

Hi dear Mahmoudagha.
Thanks for your great shoPack App.
Can you make pulic backend of this project? cause it seems backend have problem. I want to debug it.
thanks again

dotenv file content

Hello and thanks for this awesome boilerplate, I would like to know if there is posibility for you to add .env example file.
It is unclear what .env file shoud contain for this project.
Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.