FLUTTER ECOSYSTEM

ShehanUdantha/clean_architecture_digital_marketplace

Develop an E-Commerce app in Flutter with clean architecture using Bloc, Firebase and the Stripe.

clean_architecture_digital_marketplace project cover
Stars
117
Forks
17
Last push (UTC)
Oct 19, 2025
Project status
Active
Shehan Udantha GitHub avatar
GITHUB User

Shehan Udantha ↗

I'm a passionate Software Engineering graduate with a strong focus on mobile application and front-end web development.

Gampaha, Sri LankaOfficial website ↗
LanguagesDartC++CMakeRubySwiftHTMLCKotlinObjective-C

Technical topics

Dependencies used

Dependency list 42 items

Rankings

Original README

English project snapshot. Visit GitHub for the latest content.

Expand / collapse project README

Clean Architecture Flutter E-Commerce App

Project Setup

Before you run the project, make sure to follow the steps below to properly set up the environment, generate necessary files, and run the tests.

1. Setup the .env file

You need to set up the .env file in the root directory of the project with your environment-specific variables.

Example:

Create a .env file in the root directory and include the following keys (replace with your values):

STRIPE_TEST_PUBLISHABLE_KEY=your_publishable_key


STRIPE_TEST_SECRET_KEY=your_secret_key

2. Generate Required Files

Run the following command to generate the necessary files (e.g., mocks, code related to the environment variables):

dart run build_runner build

3. (Optional) Configure Firebase Service Account for Push Notifications

If you wish to enable push notifications, you need to configure the 'firebaseServiceAccountJson' used in the project.

All setup instructions are included directly in the file:

core/constants/firebase_values.dart

Make sure to follow the comments inside that file to generate and insert your Firebase service account values correctly.


Features

User View

  • View Products
  • Search Products
  • Add Products to Cart
  • Purchase Products
  • Add to Favorites
  • View Purchase History
  • Download Purchased Products
  • View Notifications
  • Change Theme
  • Change Language

Admin View

  • Access Admin Dashboard
  • Manage Products
  • Manage Categories
  • Manage Users
  • Manage Notifications
  • Change Theme
  • Change Language

Screenshots

Auth View

https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/sign_in.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/sign_up.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/email_verify.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/forgot_password.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/email_reset.jpg

User View

https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/user_home.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/search_product.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/view_all_product.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/product_view_1.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/product_view_2.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/empty_cart.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/cart.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/payment.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/purchase_history.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/purchase_products.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/notifications.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/user_profile.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/settings.jpg

Admin View

https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/admin_dashboard.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/admin_tools.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/product_manage.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/product_add.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/category_manage.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/users_manage.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/notification_manage.jpg https://raw.githubusercontent.com/ShehanUdantha/clean_architecture_digital_marketplace/HEAD/screenshots/admin_profile.jpg


All product images used in this app are for educational purposes only.