Three systems we built and still support.
We do not publish client names or logos without written permission. If you are evaluating us, ask and we will arrange a call with a client who has agreed to speak.
Warehouse and inventory system
The situation
Stock lived in a shared spreadsheet. Receiving was written on paper and keyed in at the end of the shift, so the figure on screen was always a few hours behind the shelf. Nobody could say what had been reserved against an order without asking the storeman.
What we built
- A schema where a stock movement cannot exist without an item, a location and an operator
- Goods receiving, transfers and adjustments as three screens a storeman can work from a phone
- Reorder points set per item by the supervisor, with alerts by email
- Count sheets, variance reports and an export finance can open
What they operate today
Movements are recorded as they happen. Supervisors read stock off the system instead of asking. The reorder list is produced by a query rather than remembered.
- Manufacturing · Malaysia
- React · Node.js · Express.js · SQL
- In use, supported by us
- Repository, database and hosting in the client's name
Multi-module operations platform
Staff records, device assignments and complaint email each sat in a different spreadsheet, owned by a different person, with no agreement on which copy was current.
- Staff dashboards, with each role seeing its own operation
- Device and asset tracking that keeps assignment history
- Email analytics reporting off the same records
- Access control by role, applied at the server and not just the screen
- Next.js · TypeScript · Firebase · Tailwind CSS
- Staff
- ▸ Devices
- Email analytics
- Access control
- Reports
IT · 9 devices awaiting return from leavers
- 214
- 26
- 3
Redrawn from a system we built. Sample values, not client data.
One platform holds the records the company argues about. Access is granted by role, and changes leave a trail.
Complaint email triage
Complaint email arrived in one shared inbox. Sorting it by hand meant the urgent items surfaced late, and the monthly summary was rebuilt by reading back through the inbox.
- Rules that read subject, sender domain and age — no model, nothing to explain to an auditor
- Routing to quality, logistics or sales, with escalation after 48 hours
- A record written for every message, so the report is a query instead of a recount
- A nightly PDF at 18:00 MYT
- Python · React · Firebase
Redrawn from a system we built. Sample values, not client data.
Messages are categorised on arrival and land with the team that owns them. The monthly figures come out of the database.
Want the build notes on the warehouse system? We will walk you through it in twenty minutes, on your own stock problem.