DevOra E-commerce Suite
One codebase, many brands
One white-label Flutter codebase shipped as Aleefie, Deno Store, StarMart and Irtaah, plus a store-owner admin app.
- Country
Iraq
- Type
- Client project
- Timeline
- 2025
- Platforms
- Android · iOS
- live brands from one codebase
- 4
- app builds from the same core
- 10
Overview
DevOra sells ready-made, branded mobile stores to merchants, mainly in Iraq. Instead of building every store from scratch, Mahmoud built one Flutter customer app and one admin app that are re-branded per client and shipped to Google Play and the App Store as independent apps.
Name, logo, colours, copy, package ID, Firebase project and feature flags all change per brand. The same core runs a pet shop, a toy store, a fashion brand and a home-services company, while store owners run their storefront from the admin app on their phone.
Aleefie reached the App Store in October 2025.
The challenge
- 01
Many clients, a small team: every merchant wanted their own app in weeks, and a codebase per store would multiply bugs and maintenance
- 02
Different verticals, same plumbing: pets, toys, fashion and home services all need catalog, cart, checkout, orders, coupons, notifications and an owner dashboard
- 03
Store owners are not technical and manage products, orders, banners, coupons and shipping fees from their phone
- 04
Arabic-first UX: RTL layouts, Arabic copy, Iraqi phone numbers and IQD prices across every brand
Highlights
Customer app
- Home with promo banners, categories, sub-categories, and new and featured product rails
- Favourites and a guest cart stored locally in Hive that survives until sign-in
- Checkout with coupons, shipping fees by area and order history
- Phone OTP, email, Google and Facebook sign-in, plus biometric unlock
- FCM push, an in-app notifications centre, Arabic and English, light and dark
Store-owner admin
- Dashboard with charts built on
fl_chartand Syncfusion - Orders board with status chips, date filters, bulk selection and status updates
- PDF export of orders and customer lists straight from the phone
- Products, categories, banners, coupons, shipping zones, reviews moderation, customer chat and a QR scanner
- Permission-based access so staff only see what their role allows
White-label tooling
- A single
AppConstantsfile plus brand assets define each store - A documented 9-step rebrand checklist: name, icon, package ID, Firebase project, colours, fonts, copy and signing keys
- Server-driven banners, categories, products, coupons and shipping, so owners change the storefront without a release
Signature feature
One codebase, many brands
- Every store runs the same Flutter code; only configuration changes.
- Brand config:
AppConstantsholds the app name, logo, colours, onboarding content, allowed phone-auth countries and content flags. - Brand assets and identity: icons, splash, onboarding images and translations are swapped per brand,
change_app_package_namesets the package ID, and each brand gets its own Firebase project. - Server-driven content lets the store owner control the storefront from the admin app. A new brand is a configuration task, and a fix in the core ships to every store.
Screens
Swipe for more
Engineering notes
- 01
Brand isolation without forks
All brand-specific values live in one constants file and the assets folder; the rest of the code reads from them. A checklist at the top of the file turns a new brand into a repeatable routine.
- 02
Guest-first shopping
Shoppers browse, favourite and fill a cart before signing up. After sign-in, the Hive cart is pushed to the server once per session and only accepted items are removed locally, so nothing is lost on a weak connection.
- 03
Live storefront updates
A Socket.IO connection joins a
usersroom. When the owner changes something in the admin app, ageneralevent tells the customer app to refresh, with no polling. - 04
Role- and permission-based admin
Login stores the user's role and permissions, and admin screens check
hasPerm(...), so one admin build serves owners and staff with different rights. - 05
Production monitoring per brand
Crashlytics, Performance and Analytics start at launch, Remote Config drives runtime switches, and App Check protects the Firebase backend for every brand.
Results
- 4 brands live on Google Play from one codebase: Aleefie, Deno Store, StarMart and Irtaah
- Aleefie also live on the App Store in the Shopping category, released October 2025
- 10 app builds (customer and admin) maintained from the same core, including the Pets, Grocery, OCA View and Al-Wathiq storefronts
Stack
- Flutter
- Bloc / Cubit
- Dio
- Socket.IO
- Hive
- FCM
- Crashlytics
- Remote Config
- App Check
- Google Maps
- easy_localization
- fl_chart
- pdf + printing
- local_auth