Role-based Android grocery commerce platform for customers, retailers, wholesalers, and administrators.
LIVEMart is a full-stack Android application built with Java, Firebase Authentication, and Firebase Realtime Database. It models a multi-sided grocery marketplace with B2C and B2B flows, role-specific dashboards, inventory moderation, order management, location-aware filtering, OTP authentication, voice-assisted offline reminders, and feedback workflows.
This is not a single-page shopping cart demo. The app implements separate workflows for customers, retailers, wholesalers, and admins, backed by a hierarchical Firebase data model and role-aware UI/navigation logic.
- Android application architecture with Java and XML layouts
- Firebase Authentication with phone/OTP flows
- Firebase Realtime Database schema for users, products, orders, feedback, and admin flags
- Role-based dashboards for customers, retailers, wholesalers, and administrators
- B2C and B2B order flows across marketplace participants
- Product approval, visibility controls, and moderation workflows
- Location-aware filtering with Google Geocoding APIs
- Cart, orders, delivery details, feedback, and offline reminder flows
- Voice-to-text reminder capture using Google speech APIs
| Role | Capabilities |
|---|---|
| Customer | Browse stores/items, filter by distance and stock, manage cart, place orders, submit feedback |
| Retailer | Source inventory from wholesalers, manage customer transactions, update item availability |
| Wholesaler | Add and manage bulk inventory, fulfill retailer orders |
| Admin | Approve products, hide/unhide listings, moderate marketplace visibility |
Android Java app
|
+-- role-aware activities/fragments
+-- Firebase Auth / OTP
+-- Google Geocoding
+-- voice reminders
|
v
Firebase Realtime Database
|
+-- users
+-- products
+-- orders
+-- feedback
+-- admin moderation flags
- Role-based registration
- Phone number OTP verification
- Persistent user/session state
- Category and subcategory browsing
- Distance-aware filtering
- Stock availability checks
- Store and item discovery
- Cart-based online ordering
- Unique transaction/order IDs
- Delivery details and cash-on-delivery flow
- Retailer and wholesaler order handling
- Calendar-based reminders
- Voice input for reminder memos
- Alarm receiver and notification handling
- Product approval
- Listing visibility controls
- Backend flags for hiding/unhiding products
The database stores:
- users and roles
- product categories and subcategories
- retailer/wholesaler inventory
- cart and order state
- feedback records
- admin moderation flags
Schema visualization:
- Android Studio
- Android emulator or device
- Firebase project
google-services.json
git clone https://github.com/abdulazeem-tk4vr/LIVEMart.git
cd LIVEMartThen:
- Open the project in Android Studio.
- Add your Firebase
google-services.jsonunderapp/. - Sync Gradle.
- Build and run on an emulator or connected device.
| Path | Purpose |
|---|---|
app/src/main/java/.../Main/Customer |
Customer shopping, cart, and order flows |
app/src/main/java/.../Main/Retailer |
Retailer inventory and transaction flows |
app/src/main/java/.../Main/Wholesaler |
Wholesaler inventory management |
app/src/main/java/.../Main/Admin |
Admin moderation and approval logic |
app/src/main/java/.../Main |
Authentication, navigation, reminders, feedback, shared models |
- Abdul Azeem - backend logic, Firebase integration, role-based workflows
- Anirudh Sundar - UI/UX, XML layouts, navigation
- Karthik Suresh - Firebase schema design, voice API integration
- Aryan Arora - feedback module support and UI testing
Contribution graph: