How dineshkadel/multi_vendor_food_delivery-_ec works
This is a multi-vendor food delivery platform for customers, restaurant vendors, delivery workers, and administrators. Customers browse restaurants and menus, build a cart, place and pay for orders, then track delivery and review completed orders; vendors manage restaurants, menus, and orders, while delivery workers update delivery tasks and admins oversee the platform. The graph reflects documented capabilities and sampled wiring; several feature-specific controller and page links are represented at their existing directory level because their source was not sampled.
Main entry points: App.jsx Web Router · index.js API Server · pages Browse Checkout Track · controllers Commerce Controllers
Components 24
Web Application
- Web Router
frontend/src/App.jsx - Auth Context
frontend/src/context/AuthContext.jsx - Cart Context
frontend/src/context/CartContext.jsx
Customer Commerce
- Browse Checkout Track
frontend/src/pages - Commerce Services
frontend/src/services - Payment Gateways
backend/controllers/paymentController.js
Platform Operations
- Vendor Console
frontend/src/pages - Delivery Console
frontend/src/pages/delivery - Admin Console
frontend/src/pages/admin - Admin Service
frontend/src/services/adminService.js - Realtime Client
frontend/src/utils/socket.js
API Services
- API Server
backend/index.js - Commerce Routes
backend/routes - Commerce Controllers
backend/controllers - Role Routes
backend/routes - Role Controllers
backend/controllers - Notifications
backend/utils/notifications.js - Realtime Server
backend/config/socket.js
Persistent State
- MongoDB Models
backend/models
Other components
- Customer
- Vendor
- Delivery Worker
- Administrator
- eSewa / Stripe
Connections 26
- Customer → Web Router: uses
- Vendor → Web Router: uses
- Delivery Worker → Web Router: uses
- Administrator → Web Router: uses
- Web Router → Auth Context: provides auth
- Web Router → Cart Context: provides cart
- Web Router → Browse Checkout Track: routes to
- Web Router → Vendor Console: routes to
- Web Router → Delivery Console: routes to
- Web Router → Admin Console: routes to
- Browse Checkout Track → Commerce Services: requests data
- Admin Console → Admin Service: requests data
- Commerce Services → API Server: HTTP API
- Admin Service → API Server: HTTP API
- API Server → Commerce Routes: mounts
- API Server → Role Routes: mounts
- Commerce Routes → Commerce Controllers: dispatches
- Role Routes → Role Controllers: dispatches
- Commerce Controllers → MongoDB Models: reads / writes
- Role Controllers → MongoDB Models: reads / writes
- Commerce Controllers → Notifications: creates alerts
- Payment Gateways → MongoDB Models: updates payment
- Payment Gateways → eSewa / Stripe: creates / verifies
- Browse Checkout Track → Realtime Client: tracks updates
- Realtime Client → Realtime Server: socket events
- API Server → Realtime Server: initializes