Wellnara: field service dispatch and job management.
A cloud dispatch platform for field service operations, built with React Native and Django REST Framework. It covers the full job lifecycle — appointment booking, assignment to a field engineer, live status through completion, and the customer contact that runs alongside it — so a day's work is coordinated in one system instead of across phone calls.
The challenge.
- Field work was coordinated by phone and message, which meant the only complete picture of the day existed in one dispatcher's head.
- Appointment booking, engineer assignment and customer communication lived in separate places, so a change in one rarely reached the others.
- Field engineers work in places with unreliable connectivity, so an app that assumed a live connection would fail exactly when it was needed.
- The schedule is disrupted constantly — overruns, no-access visits, urgent jobs — and the system had to absorb that rather than require a rebuild of the day.
Our approach.
- Built the engineer-facing app in React Native so the same codebase serves both mobile platforms, with the job list, detail and completion flow designed for one-handed use on site.
- Modelled the job lifecycle explicitly in Django REST Framework — booked, assigned, en route, on site, completed or exception — so status is a defined state rather than a free-text note.
- Designed the mobile client to tolerate losing connectivity: work is captured locally and reconciled when the connection returns, rather than being lost or blocked.
- Made rescheduling a normal operation rather than an error path, so a disrupted day is re-sequenced within the system instead of around it.
- Kept customer-facing communication driven by the same job state that dispatch sees, which removes the class of problem where a customer is told something the operation no longer believes.
The outcome.
- Dispatch works from a single board rather than reconstructing the day from calls and messages.
- Engineers carry a clear job list and can complete work on site whether or not they have signal.
- Customer updates follow the real job state, so the two cannot drift apart.
- Disruption is handled as ordinary re-sequencing instead of a manual rebuild of the schedule.
Where AI fits in logistics & mobility.
Reading bills of lading, invoices and proofs of delivery into structured data, and agents that chase exceptions across carriers and systems with a person approving the outcome.
Explore AI developmentOur journey with them has been nothing short of exemplary, far exceeding our initial expectations.
Questions about this build.
Still wondering something? Ask an engineer
Start with the job lifecycle, because everything else derives from it. Define the states a job can be in and the legal transitions between them, then make dispatch, the engineer app and customer communication all read from that single definition. Systems that skip this end up with status as free text, and once that happens no one can answer what is actually happening today without asking a person.
By assuming it, not handling it as an edge case. The mobile client keeps working when the connection drops — jobs already assigned remain accessible, and completion data including notes and sign-off is captured locally and reconciled when connectivity returns. The design question that matters is conflict resolution: deciding in advance what happens when the server state moved while the device was offline.
Cross-platform suits most field service work, which is why this one uses React Native. The app is largely lists, forms, status changes and media capture, none of which need platform-specific implementations, and a single codebase means both platforms get a fix at the same time. Native becomes the better answer when there is sustained heavy hardware use — continuous location tracking, specialist peripherals, intensive scanning.
It has to, because that is the normal condition rather than the exception. We model rescheduling as a first-class operation instead of an error path, so an overrun or an urgent job triggers a re-sequence within the system and the affected customers are updated from the same job state. Systems that treat the morning schedule as fixed get abandoned by dispatchers within weeks.
Let's build from here.
Thirty minutes with an engineer who builds. No sales, no drip campaign. If we're the wrong fit we'll tell you and point you somewhere better.