Botanica connects backend supermarket inventory control with real-time customer shopping and order fulfillment across two dedicated Flutter mobile applications:
- Botanica Admin App (iOS / Android) โ Catalog management, inventory updates, live order processing, and status workflow.
- Botanica User App (iOS / Android) โ Consumer storefront, interactive shopping cart, instant catalog reflection, and live order tracking.
[Admin App] [User App] [Admin App] [User App & Admin]
Add / Edit Product โโโถ Catalog Updated โโโถ Customer Orders โโโถ Mark as Delivered
(e.g., Pomegranate) (Visible in Feed) (Add to Cart & Pay) (Completed & In Sync)
- 0:00 - 0:03 โข Introduction: Introducing the dual-app grocery architecture.
- 0:03 - 0:09 โข Add Products with Ease: Admin creates and uploads new grocery products with custom pricing and imagery.
- 0:09 - 0:14 โข Updated in the User App: Immediate storefront catalog visibility for active consumers.
- 0:14 - 0:20 โข Seamless Shopping Experience: Consumer adds grocery items to cart and places an order.
- 0:20 - 0:25 โข Orders Managed from Admin App: Admin receives live order incoming alerts, inspects order items, and updates fulfillment status.
- 0:25 - 0:30 โข Delivery & Completion: Delivered order status synchronization between customer history and admin management hub.
- Inventory & Product Management: Add, update, and manage categories, stock units, and pricing.
- Order Tracking & Fulfillment: Live status transitions (
PendingโProcessingโDeliveredโCancelled). - Real-Time Data Sync: Firebase Firestore integration for synchronized app state across platforms.
- Modern UI / UX: Clean Material 3 design system adhering to grocery and e-commerce best practices.
- Flutter SDK (
^3.5.0or higher) - Dart SDK
- Configured Firebase project (
google-services.json/GoogleService-Info.plist)
# Clone the repository
git clone https://github.com/CodeWith-Basit/botanica_admin.git
# Navigate to project folder
cd botanica_admin
# Fetch dependencies
flutter pub get
# Run the app
flutter run
Crafted with passion by CodeWithBasit




