How excorsite/digitalmandu_platform works
DigitalMandu is a food-ordering and eCommerce platform. Buyers browse products, manage a cart, check out with cash-on-delivery or Khalti, and track orders; sellers and admins manage products and orders, while admins also manage users. The frontend routes users to role-specific pages and its API layer communicates with the Express backend, whose controllers operate on MongoDB models. The README documents reviews, recommendations, OTP-based auth, and a Socket.IO scaffold. Some page and controller connections are supported by the source index rather than inspected excerpts; uncertain runtime links are omitted.
Main entry points: app.js Express app · models Mongoose models · user Buyer routes · routes.jsx App routes
Components 30
Frontend
- App routes
Frontend/src/routes.jsx - Buyer pages
Frontend/src/pages/buyer - Seller pages
Frontend/src/pages/seller - Admin pages
Frontend/src/pages/admin - Payment pages
Frontend/src/pages/payment - API client
Frontend/src/api
API and access
- Express app
Backend/app.js - Auth routes
Backend/routes/auth/authRoute.js - Product routes
Backend/routes/admin/productRoute.js - Buyer routes
Backend/routes/user - Admin routes
Backend/routes/admin - Recommendation route
Backend/routes/recommendation/recommendationRoute.js
Commerce services
- Authentication
Backend/controller/auth/authController.js - Product catalog
Backend/controller/admin/product/productController.js - Cart
Backend/controller/user/cart/cartController.js - Orders
Backend/controller/user/order/orderController.js - Payments
Backend/controller/user/payment/paymentController.js - Reviews
Backend/controller/user/review/reviewController.js - Recommendations
Backend/controller/recommendation/recommendationController.js - User profiles
Backend/controller/user/customization/customizationController.js - Order administration
Backend/controller/admin/order/adminOrderController.js - User administration
Backend/controller/admin/users/userController.js
Data and integrations
- Mongoose models
Backend/models - MongoDB connection
Backend/database/database.js - Recommendation logic
Backend/services/recommendationService.js - Email delivery
Backend/services/sendEmail.js
Other components
- Buyer
- Seller / admin
- Khalti
- MongoDB
Connections 38
- Buyer → App routes: uses
README.md - Seller / admin → App routes: uses
README.md - App routes → Buyer pages: routes to
Frontend/src/routes.jsx - App routes → Seller pages: routes to
Frontend/src/routes.jsx - App routes → Admin pages: routes to
Frontend/src/routes.jsx - App routes → Payment pages: routes to
Frontend/src/routes.jsx - Buyer pages → API client: requests data
- Seller pages → API client: requests data
- Admin pages → API client: requests data
- Payment pages → API client: requests data
- API client → Express app: calls API
README.md - Express app → Auth routes: mounts
Backend/app.js - Express app → Product routes: mounts
Backend/app.js - Express app → Buyer routes: mounts
Backend/app.js - Express app → Admin routes: mounts
Backend/app.js - Express app → Recommendation route: mounts
Backend/app.js - Auth routes → Authentication: dispatches
Backend/routes/auth/authRoute.js - Product routes → Product catalog: dispatches
Backend/routes/admin/productRoute.js - Buyer routes → Cart: dispatches
Backend/routes/user/cartRoute.js - Buyer routes → Orders: dispatches
Backend/routes/user/orderRoute.js - Buyer routes → Payments: dispatches
Backend/routes/user/paymentRoute.js - Buyer routes → Reviews: dispatches
Backend/routes/user/userReviewRoute.js - Buyer routes → User profiles: dispatches
Backend/routes/user/profileRoute.js - Admin routes → Order administration: dispatches
Backend/routes/admin/adminOrderRoute.js - Admin routes → User administration: dispatches
Backend/routes/admin/adminUserRoute.js - Authentication → Mongoose models: reads and writes
Backend/controller/auth/authController.js - Product catalog → Mongoose models: reads and writes
Backend/controller/admin/product/productController.js - Cart → Mongoose models: reads and writes
Backend/controller/user/cart/cartController.js - Orders → Mongoose models: reads and writes
Backend/controller/user/order/orderController.js - Payments → Mongoose models: reads and writes
Backend/controller/user/payment/paymentController.js - Reviews → Mongoose models: reads and writes
Backend/controller/user/review/reviewController.js - Recommendations → Recommendation logic: requests recommendations
Backend/controller/recommendation/recommendationController.js - Recommendations → Mongoose models: queries products
Backend/controller/recommendation/recommendationController.js - Recommendation logic → Mongoose models: reads orders
Backend/services/recommendationService.js - Authentication → Email delivery: sends OTP
Backend/controller/auth/authController.js - Payments → Khalti: initiates payment
- Express app → MongoDB connection: connects database
Backend/app.js - MongoDB connection → MongoDB: connects to