How gamindukalmadu/techloom-intern-assessment works
The tree contains two related but separate POS/commerce applications: task-01 is a cashier-facing POS with inventory, checkout, payments, reporting, and settings; task-02 is a customer storefront with admin operations, reserved-stock checkout, payment, and refunds. The maps show their distinct UI/API boundaries and the evidenced backend workflow. Source sampling is incomplete, and the empty README provides no additional capability or relationship evidence; unsampled feature branches are represented only where the tree establishes them.
Main entry points: admin.controller.js Admin operations · App.jsx POS routes and context · payment.controller.js Checkout and payment · Product.js Products and stock
Components 28
POS interface
- POS routes and context
task-01/pos-order-inventory-system/frontend/src/App.jsx - Cart and checkout
task-01/pos-order-inventory-system/frontend/src/pages/Checkout.jsx - Inventory management
task-01/pos-order-inventory-system/frontend/src/pages/Inventory.jsx - Dashboard and reports
task-01/pos-order-inventory-system/frontend/src/pages/Dashboard.jsx - Payment workflow
task-01/pos-order-inventory-system/frontend/src/pages/Payment.jsx
POS API
- POS HTTP API
task-01/pos-order-inventory-system/backend/src/app.js - Product endpoints
task-01/pos-order-inventory-system/backend/src/routes/product.routes.js - Product operations
task-01/pos-order-inventory-system/backend/src/controllers/product.controller.js - Cart operations
task-01/pos-order-inventory-system/backend/src/controllers/cart.controller.js - Report operations
task-01/pos-order-inventory-system/backend/src/controllers/report.controller.js - Authentication service
task-01/pos-order-inventory-system/backend/src/services/auth.service.js
Storefront interface
- Storefront pages
task-02/frontend/app/page.js - Account API client
task-02/frontend/services/authService.js - Frontend API client
task-02/frontend/services/api.js
Storefront API
- Commerce HTTP API
task-02/backend/src/app.js - Product endpoints
task-02/backend/src/routes/product.routes.js - Catalog operations
task-02/backend/src/controllers/product.controller.js - Admin operations
task-02/backend/src/controllers/admin.controller.js - Checkout and payment
task-02/backend/src/controllers/payment.controller.js - Reservation expiry
task-02/backend/src/services/reservationExpiry.service.js
Commerce records
- Orders
task-02/backend/src/models/Order.js - Products and stock
task-02/backend/src/models/Product.js - Reservations
task-02/backend/src/models/Reservation.js - Payments
task-02/backend/src/models/Payment.js - Refunds
task-02/backend/src/models/Refund.js - Categories
task-02/backend/src/models/Category.js
Other components
- Cashier
- Shopper or admin
Connections 27
- Cashier → POS routes and context: uses
task-01/pos-order-inventory-system/frontend/src/App.jsx - POS routes and context → Cart and checkout: routes to
task-01/pos-order-inventory-system/frontend/src/App.jsx - POS routes and context → Inventory management: routes to
task-01/pos-order-inventory-system/frontend/src/App.jsx - POS routes and context → Dashboard and reports: routes to
task-01/pos-order-inventory-system/frontend/src/App.jsx - POS routes and context → Payment workflow: routes to
task-01/pos-order-inventory-system/frontend/src/App.jsx - POS HTTP API → Product endpoints: mounts
task-01/pos-order-inventory-system/backend/src/app.js - Product endpoints → Product operations: dispatches
task-01/pos-order-inventory-system/backend/src/routes/product.routes.js - Cart operations → Report operations
- Authentication service → POS HTTP API
- Shopper or admin → Storefront pages: uses
- Account API client → Frontend API client: calls
task-02/frontend/services/authService.js - Commerce HTTP API → Product endpoints: mounts routes
task-02/backend/src/app.js - Product endpoints → Catalog operations: dispatches
task-02/backend/src/routes/product.routes.js - Catalog operations → Products and stock: reads and writes
task-02/backend/src/controllers/product.controller.js - Catalog operations → Categories: queries
task-02/backend/src/controllers/product.controller.js - Admin operations → Products and stock: aggregates
task-02/backend/src/controllers/admin.controller.js - Admin operations → Orders: aggregates
task-02/backend/src/controllers/admin.controller.js - Admin operations → Payments: queries
task-02/backend/src/controllers/admin.controller.js - Admin operations → Refunds: queries
task-02/backend/src/controllers/admin.controller.js - Admin operations → Reservations: queries
task-02/backend/src/controllers/admin.controller.js - Checkout and payment → Orders: updates
task-02/backend/src/controllers/payment.controller.js - Checkout and payment → Reservations: updates
task-02/backend/src/controllers/payment.controller.js - Checkout and payment → Products and stock: adjusts stock
task-02/backend/src/controllers/payment.controller.js - Checkout and payment → Payments: creates and reads
task-02/backend/src/controllers/payment.controller.js - Reservation expiry → Reservations: expires
task-02/backend/src/services/reservationExpiry.service.js - Reservation expiry → Orders: updates
task-02/backend/src/services/reservationExpiry.service.js - Reservation expiry → Products and stock: releases stock
task-02/backend/src/services/reservationExpiry.service.js