Tables hide space
The problem
A flat inventory table tells you what exists, not where it sits or how full a row is.
What I did
Modelled the storage hierarchy explicitly so the same data could be projected into an interactive 3D view.
Case study
Full-stack inventory and PO management with a 3D warehouse model rendered in Three.js.
Warehouse operators needed more than a flat table to understand where inventory lived, how pallets moved, and whether storage slots were efficiently utilized — especially when seeding or reviewing large purchase orders.
By modeling the physical warehouse hierarchy in MongoDB and projecting it into a Three.js 3D scene, operators can navigate the real layout, inspect individual items, and understand spatial utilization without leaving the browser.
Next.js 15 App Router warehouse system backed by MongoDB Atlas. Manages items, vendors, suppliers, purchase orders with embedded pallets, and renders the structured warehouse layout (unit → row → column) as an interactive 3D preview using Three.js. Dashboard analytics powered by ApexCharts.
The physical warehouse is modelled in MongoDB Atlas as a Unit → Row → Column hierarchy, alongside items, vendors/suppliers, and purchase orders with embedded pallets. Next.js 15 App Router API routes serve that structure to the client, which renders it as a Three.js 3D scene and an ApexCharts dashboard. A dbScript seeder generates a realistic dataset so the whole flow can be demonstrated end to end.
The problem
A flat inventory table tells you what exists, not where it sits or how full a row is.
What I did
Modelled the storage hierarchy explicitly so the same data could be projected into an interactive 3D view.
The problem
A warehouse UI with an empty database shows nothing useful.
What I did
Wrote a seed runner that generates parties, the layout, 50 items, and 10 purchase orders with pallets.
Warehouse schema & CRUD
Items, parties (vendor/supplier), POs with pallets, and warehouse hierarchy fully implemented.
3D item preview (Three.js)
3D spatial viewer for individual items embedded in the warehouse browse flow.
Analytics dashboard
ApexCharts panels for inventory and purchase order analytics.
Role-based access control
Scaffolded for Admin/Manager/Employee tiers, not yet fully enforced in UI.