IMS Containers — Fleet & Container Management Platform
A logistics operator managing a container and vehicle fleet needed to know where every asset was, what condition it was in, and who was accountable for it — without the answer depending on which staff member you asked.
- Client
- Crystal Logistic
- Region
- India
- Discipline
- Enterprise Systems
- Fleet
- Hire & return
- Maintenance
- Locations
- Users & roles
- Audit log
Interface recreated from the delivered system. Client data is illustrative and non-identifying.
The problem
Container fleets fail quietly. An asset goes out on hire, comes back needing repair, sits in a yard, and unless someone updates a sheet, it is simply invisible — still billed as available, still counted in capacity, generating nothing.
The operator was tracking assets in spreadsheets shared over email, with a single shared login into what tooling existed. That made two things impossible at once: knowing the true state of the fleet, and knowing who changed what.
- Asset status was as current as the last person who remembered to update the sheet.
- Hire, return, repair and maintenance history were recorded inconsistently, so lifecycle cost per asset was unknowable.
- A shared login meant no accountability — every change looked identical in the record.
- Utilisation reporting was manual, so it happened rarely and was distrusted when it did.
The approach
The core decision was to make the asset — not the transaction — the primary record. Every event in a container's life attaches to that container, so its history is a timeline rather than rows scattered across sheets.
The second decision was to design permissions before features. In an operation where multiple staff, yard supervisors and managers touch the same records, RBAC is not an admin afterthought; it determines what the screens can even be.
- Modelled every asset with an immutable identity and a mutable, fully-logged state.
- Defined the role matrix — who can create, transfer, mark under repair, retire and report — before building any screen.
- Made every state change an append-only event so history is reconstructable and nothing silently overwrites.
- Built the manager dashboard from questions the operator actually asks weekly, not from a generic KPI template.
What we built
A fleet platform where the registry, the movement history and the reporting all read from one event-sourced record per asset.
- Container and vehicle registry with type, capacity, ownership, current location and live status.
- Lifecycle state machine — available, on hire, in transit, under repair, retired — with permitted transitions enforced server-side.
- Hire and return workflow capturing counterparty, dates, rates and condition on both legs.
- Maintenance and repair log per asset, building a real cost-to-own history over time.
- Role-based access control with distinct roles for admin, operations, yard supervisor and read-only management.
- Full audit trail — every state change stamped with actor, timestamp and previous value.
- Utilisation and availability dashboard with filters by asset type, location and period.
Tech stack
Frontend
Backend
Data
Infra
Outcome
The fleet has one current state that everyone reads from, and a history that survives staff turnover.
- Every asset has a live status and a complete, attributable history.
- Shared logins are gone — each action is tied to a named user and a role.
- Utilisation reporting is a dashboard filter instead of a manual spreadsheet exercise.
- Repair and maintenance cost accumulates per asset, making replace-or-repair a data question.
Cold Room Management & Construction Tracking System
Replaced spreadsheet-and-WhatsApp site tracking with one costed, stage-wise view of every cold room build in progress.
Multi-Product Inventory & Procurement System
Multi-warehouse stock, purchase orders and supplier pricing unified into one ledger with approval workflows.
Building something like this?
Most of these started as one module solving one painful process. Tell us which process is yours.
We reply within 24 hours, Mon–Sat.