How athulkrishnaaj/aromaticaorg works
This is a server-rendered e-commerce application with customer shopping and account flows plus an admin back office. Customer requests enter through the user routes, are handled by controllers, and read or update MongoDB-backed domain models; checkout places orders and updates inventory and cart state. Admin routes cover catalog, customer, order, coupon, offer, and sales management. The source index documents controller-to-model references, while excerpts show selected checkout, offer, authentication, and routing behavior; other links are limited to those references.
Main entry points: orderController.js Checkout and orders · userController.js Account and catalog · adminRoute.js Admin routes · userRoute.js Customer routes
Components 27
Application entry
- Customer routes
routes/userRoute.js - Admin routes
routes/adminRoute.js - Access checks
Authentication/auth.js
Customer commerce
- Account and catalog
controllers/userController.js - Cart
controllers/cartController.js - Checkout and orders
controllers/orderController.js - Wishlist
controllers/wishlistController.js - Wallet
controllers/walletController.js - Coupons
controllers/couponController.js
Admin operations
- Dashboard and reports
controllers/adminController.js - Catalog management
controllers/productController.js - Category management
controllers/categoryController.js - Customer management
controllers/customerController.js - Offer management
controllers/offerController.js
Domain data
- Addresses
models/addressModel.js - Cart records
models/cartModel.js - Categories
models/categoryModel.js - Coupons
models/couponModel.js - Offers
models/offerModel.js - Orders
models/orderModel.js - Products
models/productModel.js - Users
models/userModel.js - Wallets
models/walletModel.js - Wishlists
models/wihslistModel.js
Other components
- Shopper
- Administrator
- Razorpay
Connections 48
- Shopper → Customer routes: requests
routes/userRoute.js - Customer routes → Account and catalog: routes to
routes/userRoute.js - Customer routes → Cart: routes to
routes/userRoute.js - Customer routes → Checkout and orders: routes to
routes/userRoute.js - Customer routes → Wishlist: routes to
routes/userRoute.js - Customer routes → Coupons: routes to
routes/userRoute.js - Customer routes → Wallet: routes to
routes/userRoute.js - Customer routes → Access checks: guards with
routes/userRoute.js - Administrator → Admin routes: requests
routes/adminRoute.js - Admin routes → Access checks: guards with
routes/adminRoute.js - Admin routes → Dashboard and reports: routes to
routes/adminRoute.js - Admin routes → Catalog management: routes to
routes/adminRoute.js - Admin routes → Category management: routes to
routes/adminRoute.js - Admin routes → Customer management: routes to
routes/adminRoute.js - Admin routes → Checkout and orders: routes to
routes/adminRoute.js - Admin routes → Coupons: routes to
routes/adminRoute.js - Admin routes → Offer management: routes to
routes/adminRoute.js - Access checks → Users: checks account
Authentication/auth.js - Account and catalog → Users: reads and updates
controllers/userController.js - Account and catalog → Products: reads
controllers/userController.js - Account and catalog → Categories: reads
controllers/userController.js - Account and catalog → Offers: reads offers
controllers/userController.js - Account and catalog → Addresses: manages addresses
controllers/userController.js - Account and catalog → Orders: reads orders
controllers/userController.js - Account and catalog → Wallets: reads wallet
controllers/userController.js - Account and catalog → Wishlists: reads wishlist
controllers/userController.js - Account and catalog → Cart records: reads cart
controllers/userController.js - Cart → Products: reads
controllers/cartController.js - Cart → Users: reads
controllers/cartController.js - Cart → Cart records: updates
controllers/cartController.js - Cart → Coupons: reads
controllers/cartController.js - Cart → Wishlists: reads
controllers/cartController.js - Checkout and orders → Users: reads
controllers/orderController.js - Checkout and orders → Products: updates inventory
controllers/orderController.js - Checkout and orders → Cart records: reads and clears
controllers/orderController.js - Checkout and orders → Addresses: reads and updates
controllers/orderController.js - Checkout and orders → Orders: creates and updates
controllers/orderController.js - Checkout and orders → Coupons: reads
controllers/orderController.js - Checkout and orders → Wallets: updates
controllers/orderController.js - Checkout and orders → Wishlists: updates
controllers/orderController.js - Checkout and orders → Razorpay: initializes payment
- Wishlist → Wishlists: updates
controllers/wishlistController.js - Wishlist → Products: reads
controllers/wishlistController.js - Wishlist → Cart records: updates
controllers/wishlistController.js - Wallet → Wallets: updates
controllers/walletController.js - Wallet → Users: reads
controllers/walletController.js - Coupons → Coupons: manages
controllers/couponController.js - Coupons → Cart records: updates
controllers/couponController.js