Efficient order management with role-based access.
AR Ayurveda's order volume was growing, but their fulfillment process was chaotic. Orders came in from the main website and multiple landing pages, and different team members needed different levels of access -- managers approving orders, shipping staff updating tracking info, admins overseeing everything. They needed a dedicated internal tool, not just an admin panel tab.
The tricky part was designing a permission system granular enough for the real workflow. A shipping manager shouldn't see payment details. A team lead should only see their region's orders. And the whole thing had to be locked down to the office network -- no one should be processing orders from a random cafe.
I built a standalone React app with a Node.js/Express backend connected to the existing MySQL database. The role-based access control system maps each user to a role with specific permissions, and the UI dynamically shows or hides features based on that role. Network restriction is enforced at the API level -- requests from unauthorized IPs are rejected before hitting any business logic. I also built a sync mechanism that pulls orders from various mini landing pages into a unified view, so the team doesn't have to jump between systems.
The order room cut the team's order processing time significantly by eliminating manual cross-referencing and giving each role exactly the tools they need. It was my first time designing a multi-role internal tool from scratch, and it taught me a lot about modeling real-world business workflows into clean permission hierarchies.
Abhishek Diwakar
Software Engineer