How shashwat-raj-420/food_delivery_app works
This is a Flutter food-delivery app backed by Firebase. The documented customer flow is authentication, menu browsing, cart management, and order placement; the repository also includes payment and delivery-progress pages, plus settings and theme support. Restaurant/admin product and order management and Firebase-driven updates are documented capabilities, but the supplied source excerpts do not show their wiring. The graph uses README claims and exact paths from the tree; uncertain implementation links are omitted.
Main entry points: food_page.dart Food Menu · home_page.dart Home Page · cart_page.dart Cart · firestore.dart Firestore Service
Components 22
Identity
- Auth Gate
lib/services/auth/auth_gate.dart - Login / Register
lib/services/auth/login_or_register.dart - Auth Service
lib/services/auth/auth_service.dart
Customer Ordering
- Home Page
lib/pages/home_page.dart - Food Menu
lib/pages/food_page.dart - Restaurant Model
lib/models/restaurant.dart - Food Model
lib/models/food.dart - Cart
lib/pages/cart_page.dart - Cart Item
lib/models/cart_item.dart - Payment
lib/pages/payment_page.dart - Delivery Progress
lib/pages/delivery_progess_page.dart
Restaurant Operations
- Product / Order Management
lib/services/database
App Services
- App Entry
lib/main.dart - Firestore Service
lib/services/database/firestore.dart - Settings
lib/pages/settings_page.dart - Theme Provider
lib/themes/theme_provider.dart - Theme Modes
lib/themes/light_mode.dart - Shared UI Components
lib/components
Other components
- Customer
- Restaurant Admin
- Firebase Auth
- Firestore
Connections 25
- Customer → App Entry: opens app
- App Entry → Auth Gate: starts auth
- Auth Gate → Login / Register: routes unauthenticated
- Login / Register → Auth Service: authenticates
- Auth Service → Firebase Auth: uses
- Auth Gate → Home Page: opens authenticated
- Home Page → Food Menu: browses menu
- Food Menu → Firestore Service: loads menu
- Firestore Service → Firestore: reads and writes
- Food Menu → Food Model: displays items
- Home Page → Restaurant Model: uses restaurant data
- Food Menu → Cart: adds items
- Cart → Cart Item: manages quantities
- Cart → Payment: continues to payment
- Payment → Firestore Service: places order
- Customer → Delivery Progress: views progress
- Restaurant Admin → Product / Order Management: manages products and orders
- Product / Order Management → Firestore Service: uses database service
- Firestore → Delivery Progress: provides order updates
- App Entry → Settings: provides settings
- Settings → Theme Provider: changes theme
- Theme Provider → Theme Modes: selects mode
- Home Page → Shared UI Components: renders shared UI
- Food Menu → Shared UI Components: renders shared UI
- Cart → Shared UI Components: renders shared UI