How pratik0192/makextra works
This repository implements an online retail shop with a customer storefront, an administrative console, and an Express/MongoDB backend. Customers browse products, manage a cart, and proceed through checkout and order tracking; administrators manage products, users, orders, and banners. The backend also handles accounts, addresses, reviews, and shipping/payment operations. The excerpts show storefront routing and cart/product API calls, plus order and review routing and controller behavior. Other page and controller details are represented at subsystem level where the source index identifies them; those connections are not inferred beyond documented or excerpted relationships.
Main entry points: index.js HTTP API server · App.jsx Storefront router · orderController.js Order and shipping · ShopContext.jsx Shop state and API
Components 34
Customer storefront
- Storefront router
frontend/src/App.jsx - Product discovery
frontend/src/pages/AllProducts.jsx - Product details
frontend/src/pages/SingleProduct.jsx - Cart
frontend/src/pages/Cart.jsx - Checkout
frontend/src/pages/Checkout.jsx - Order account
frontend/src/pages/Orders.jsx - Order tracking
frontend/src/pages/OrderTrack.jsx - Shop state and API
frontend/src/context/ShopContext.jsx
Admin console
- Admin router
admin/src/App.jsx - Product management
admin/src/pages/AddProducts.jsx - Order management
admin/src/pages/Orders.jsx - User management
admin/src/pages/AllUsers.jsx - Banner management
admin/src/pages/Banners.jsx
Commerce backend
- HTTP API server
backend/index.js - Product API
backend/routes/productRoutes.js - Cart API
backend/routes/cartRoutes.js - Order API
backend/routes/orderRoutes.js - User API
backend/routes/userRoutes.js - Address API
backend/routes/addressroutes.js - Review API
backend/routes/reviewRoutes.js - Banner API
backend/routes/bannerRoutes.js - Product operations
backend/controller/productController.js - Cart operations
backend/controller/cartController.js - Order and shipping
backend/controller/orderController.js - Account operations
backend/controller/userController.js - Address operations
backend/controller/adressController.js - Review operations
backend/controller/reviewController.js - Banner operations
backend/controller/bannerController.js - Product records
backend/models/productModel.js - Order records
backend/models/orderModel.js - User records
backend/models/userModel.js
External services
- Payment provider
- Shipping provider
Other components
- Shopper
Connections 34
- Shopper → Storefront router: uses
frontend/src/App.jsx - Storefront router → Product discovery: routes to
frontend/src/App.jsx - Storefront router → Product details: routes to
frontend/src/App.jsx - Storefront router → Cart: routes to
frontend/src/App.jsx - Storefront router → Checkout: routes to
frontend/src/App.jsx - Storefront router → Order account: routes to
frontend/src/App.jsx - Storefront router → Order tracking: routes to
frontend/src/App.jsx - Product discovery → Shop state and API: uses state
frontend/src/pages/AllProducts.jsx - Checkout → Shop state and API: uses state
frontend/src/pages/Checkout.jsx - Shop state and API → Product API: fetches products
frontend/src/context/ShopContext.jsx - Shop state and API → Cart API: calls cart API
frontend/src/context/ShopContext.jsx - HTTP API server → Product API: mounts
backend/index.js - HTTP API server → Cart API: mounts
backend/index.js - HTTP API server → Order API: mounts
backend/index.js - HTTP API server → User API: mounts
backend/index.js - HTTP API server → Address API: mounts
backend/index.js - HTTP API server → Review API: mounts
backend/index.js - HTTP API server → Banner API: mounts
backend/index.js - Product API → Product operations: routes to
backend/routes/productRoutes.js - Cart API → Cart operations: routes to
backend/routes/cartRoutes.js - Order API → Order and shipping: routes to
backend/routes/orderRoutes.js - User API → Account operations: routes to
backend/routes/userRoutes.js - Address API → Address operations: routes to
backend/routes/addressroutes.js - Review API → Review operations: routes to
backend/routes/reviewRoutes.js - Banner API → Banner operations: routes to
backend/routes/bannerRoutes.js - Product operations → Product records: reads and writes
backend/controller/productController.js - Order and shipping → Order records: reads and writes
backend/controller/orderController.js - Order and shipping → User records: updates cart
backend/controller/orderController.js - Account operations → User records: reads and writes
backend/controller/userController.js - Account operations → Order records: reads orders
backend/controller/userController.js - Review operations → Product records: checks product
backend/controller/reviewController.js - Review operations → Review API: uses review model
backend/controller/reviewController.js - Order and shipping → Payment provider: creates payment · Inferred; not shown in the code that was read.
- Order and shipping → Shipping provider: dispatches shipments
backend/controller/orderController.js