How excorsite/digital_mandu_platform works
DigitalMandu is a food-ordering and eCommerce platform with buyer, seller, and admin experiences. Buyers browse products and recommendations, manage a cart, place orders, and pay by COD or Khalti; they can also manage profiles and reviews. Seller/admin workflows cover product, order, and user management. The graph follows the documented frontend-to-API structure and sampled controller behavior. Several route and page internals were not sampled, so those links reflect README documentation rather than inspected call sites; realtime is documented only as a Socket.IO scaffold.
Main entry points: app.js Express application · routes.jsx App routes · endpoints API endpoints · paymentController.js Payment processing
Components 34
Frontend experience
- App routes
Frontend/src/routes.jsx - Browse products
Frontend/src/pages/buyer/Home.jsx - Product details
Frontend/src/pages/buyer/ProductDetails.jsx - Cart
Frontend/src/pages/buyer/Cart.jsx - Checkout
Frontend/src/pages/buyer/Checkout.jsx - Order history
Frontend/src/pages/buyer/MyOrders.jsx - Sign in / register
Frontend/src/pages/auth/login/Login.jsx - Admin console
Frontend/src/pages/admin/Orders.jsx - Seller console
Frontend/src/pages/seller/Orders.jsx - Payment status
Frontend/src/pages/payment/KhaltiSuccess.jsx - API client
Frontend/src/api/client.js - API endpoints
Frontend/src/api/endpoints
API workflows
- Express application
Backend/app.js - Authentication
Backend/controller/auth/authController.js - Product catalog
Backend/controller/global/globalController.js - Recommendations
Backend/controller/recommendation/recommendationController.js - Cart management
Backend/controller/user/cart/cartController.js - Order management
Backend/controller/user/order/orderController.js - Payment processing
Backend/controller/user/payment/paymentController.js - Product reviews
Backend/controller/user/review/reviewController.js - Profile management
Backend/controller/user/customization/customizationController.js - Admin products
Backend/controller/admin/product/productController.js - Admin orders
Backend/controller/admin/order/adminOrderController.js - User management
Backend/controller/admin/users/userController.js - Recommendation logic
Backend/services/recommendationService.js
Persistent data
- User records
Backend/models/userModel.js - Product records
Backend/models/productModel.js - Order records
Backend/models/orderModel.js - Review records
Backend/models/reviewModel.js - MongoDB
Backend/database/database.js
External services
- Khalti
- Email service
Backend/services/sendEmail.js
Other components
- Buyer
- Seller / Admin
Connections 48
- Buyer → App routes: uses
- Seller / Admin → App routes: uses
- App routes → Browse products: routes to
- App routes → Product details: routes to
- App routes → Cart: routes to
- App routes → Checkout: routes to
- App routes → Order history: routes to
- App routes → Sign in / register: routes to
- App routes → Admin console: routes to
- App routes → Seller console: routes to
- App routes → Payment status: routes to
- Browse products → API endpoints: requests catalog
- Product details → API endpoints: requests details
- Cart → API endpoints: requests cart
- Checkout → API endpoints: places order
- Order history → API endpoints: requests orders
- Sign in / register → API endpoints: requests auth
- Admin console → API endpoints: requests admin
- Seller console → API endpoints: requests seller
- Payment status → API endpoints: checks payment
- API endpoints → API client: uses
- API client → Express application: HTTP requests
- Express application → Authentication: dispatches
- Express application → Product catalog: dispatches
- Express application → Recommendations: dispatches
- Express application → Cart management: dispatches
- Express application → Order management: dispatches
- Express application → Payment processing: dispatches
- Express application → Product reviews: dispatches
- Express application → Profile management: dispatches
- Express application → Admin products: dispatches
- Express application → Admin orders: dispatches
- Express application → User management: dispatches
- Authentication → User records: reads / writes
- Authentication → Email service: sends OTP
- Product catalog → Product records: reads
- Product catalog → Review records: reads
- Recommendations → Recommendation logic: gets candidates
- Recommendations → Product records: reads products
- Recommendation logic → Order records: reads purchases
- Cart management → Product records: reads products
- Cart management → User records: reads / updates cart
- Order management → Order records: reads / writes
- Order management → User records: reads / clears cart
- Payment processing → Order records: reads / updates
- Payment processing → User records: clears cart
- Payment processing → Khalti: initiates / verifies
- Product reviews → Product records: checks product