{ M.Ghaly }
← All Projects
Mobile App

VIMI App

Full-featured e-commerce app with dual-role access — shoppers browse and order, while admins manage the entire store from a dedicated mobile dashboard.

Year

2023

Company

Freelance

Status

Live

App Store

Download →

FlutterBLoCClean ArchitectureE-CommerceMulti-Role

Overview

VIMI is a full e-commerce mobile app for iOS, delivering a complete shopping experience for customers and a built-in admin dashboard for store managers — all within a single Flutter codebase.

The Challenge

Building a dual-role app that feels native to each user type: customers expect a smooth, fast shopping flow, while admins need real control over products, orders, and users — without switching to a separate web panel.

My Role

Flutter Developer — architected and built the full app, including the role-based navigation system, the customer-facing storefront, and the in-app admin dashboard.

Architecture & Technical Decisions

Clean Architecture + BLoC

Each feature (auth, catalog, cart, orders, admin) is a self-contained layer stack: data → domain → presentation. BLoC drives all UI state, keeping business logic fully decoupled from widgets and making every feature independently testable.

Role-Based Navigation

After login, the app resolves the user's role from the auth token and routes to either the customer shell (Home, Catalog, Cart, Orders, Profile) or the admin shell (dashboard, product management, order management, user management). Both share the same domain and data layers.

E-Commerce Core

  • Product catalog with categories and search
  • Cart and checkout flow with order placement
  • Order history and status tracking for customers

Admin Dashboard on Mobile

  • Product CRUD: add, edit, delete listings with image uploads
  • Order management: view all orders, update status
  • User management: view registered users

Key Features

  • Dual-role access (customer / admin) from a single app
  • Full e-commerce flow: browse → cart → checkout → order tracking
  • Admin dashboard to manage products, orders, and users on mobile
  • Clean Architecture with strict layer separation
  • BLoC state management across all features

Results

  • Live on the App Store
  • Enabled store managers to run operations entirely from their phone