How mohitsinghs0/foodfax works
FoodFax is a customer-facing counter-ordering app for nearby food stalls, with cart, checkout, token tracking, and order history. Its documented product also includes stall operations, payments, accessibility, location tools, reviews, and spending analytics. The graph emphasizes the customer workflow and major documented capabilities; unsampled features are included where the tree or README supports them. Some subsystem links are omitted because the available excerpts do not establish their runtime callers.
Main entry points: orderService.ts Order Lifecycle · shopService.ts Stall and Location Data · App.tsx App Shell and Routing · SearchView.tsx Search Stalls and Dishes
Components 23
Customer App
- App Shell and Routing
src/App.tsx - Browse and Discover
src/views/HomeView.tsx - Search Stalls and Dishes
src/views/SearchView.tsx - Stall Menu
src/views/ShopDetailView.tsx
Ordering and Tracking
- Cart State
src/context/CartContext.tsx - Checkout
src/views/CheckoutView.tsx - Order Lifecycle
src/services/orderService.ts - Live Token Tracker
src/components/order/LiveOrderTracker.tsx - History and Spending
src/views/OrdersHistoryView.tsx - Ratings and Reviews
src/components/order/OrderRatingReview.tsx
Data and Identity
- Stall and Location Data
src/services/shopService.ts - Menu Data
src/services/menuService.ts - Supabase Data Access
src/services/firestoreSyncService.ts - Supabase
src/supabase.ts - Authentication and Profiles
src/services/authService.ts - Payment APIs and Handler
api/payment/create-order.ts - Order Cancellation API
api/order/cancel.ts
Product Capabilities
- Stall Kitchen Terminal
src - Accessibility and Audio
src/context/AccessibilityContext.tsx - QR Counter Ordering
src/components/common/QRScanModal.tsx - Camera Profile Avatar
src/components/profile/CameraAvatarModal.tsx - Stall Navigation
src/components/order/ShopDirectionMap.tsx
Other components
- Customer
Connections 29
- Customer → App Shell and Routing: uses
- App Shell and Routing → Browse and Discover: routes to
src/App.tsx - App Shell and Routing → Search Stalls and Dishes: routes to
src/App.tsx - App Shell and Routing → Stall Menu: routes to
src/App.tsx - Browse and Discover → Stall and Location Data: browses
- Search Stalls and Dishes → Stall and Location Data: queries
src/views/SearchView.tsx - Search Stalls and Dishes → Menu Data: queries
src/views/SearchView.tsx - Stall Menu → Menu Data: loads menu
- Customer → Cart State: adds items
- Cart State → Checkout: continues to
- Checkout → Order Lifecycle: places order
- Cart State → Order Lifecycle: creates order
src/context/CartContext.tsx - Order Lifecycle → Supabase Data Access: uses
src/services/orderService.ts - Supabase Data Access → Supabase: reads and writes
src/services/firestoreSyncService.ts - Order Lifecycle → Live Token Tracker: updates status
- Customer → Live Token Tracker: tracks token
- Customer → History and Spending: reviews spending
- Customer → Ratings and Reviews: submits feedback
src/components/order/OrderRatingReview.tsx - Ratings and Reviews → Order Lifecycle: submits review
src/components/order/OrderRatingReview.tsx - Customer → Payment APIs and Handler: pays by UPI
- Customer → Order Cancellation API: requests cancellation
- Customer → Stall Kitchen Terminal: stall operations
- Customer → Accessibility and Audio: sets preferences
- Customer → QR Counter Ordering: scans stall QR
- Customer → Camera Profile Avatar: captures profile photo
- Customer → Stall Navigation: opens directions
- Authentication and Profiles → Stall and Location Data: loads owner shop
src/services/authService.ts - Stall and Location Data → Supabase Data Access: uses
src/services/shopService.ts - Stall and Location Data → Supabase: checks configuration
src/services/shopService.ts