[ Case study ]
Driver trip logs were paper, dispatched itineraries were faxes of faxes, and the office reconstructed each week's actual operations from handwriting — billing lagged, and hours-of-service checks ran on trust.
CLIENT a regional charter and tour bus company — FOCUS Offline-first with append-only records
Representative examplesEvery case study in this library is an illustrative composite of the kind of engagement we deliver — written to show our method and standards, not to name clients.
Charter and tour work runs on paperwork this company never got ahead of: trip logs kept by drivers on paper clipboards, itineraries faxed and re-faxed between the office and dispatch, and each week's actual operations reconstructed from handwriting when billing came due. The fleet is regional — school trips, corporate shuttles, multi-day tours — with routes that lose connectivity for hours at a stretch. Hours-of-service expectations exist, but checking them meant trust and a phone call.
Driver trip logs were paper, dispatched itineraries were faxes of faxes, and the office reconstructed each week's actual operations from handwriting — billing lagged, and hours-of-service checks ran on trust.
We proposed an offline-first Flutter app where trip events append locally with device timestamps and sync in order when connectivity returns, so the log reads as one coherent record to an outside auditor regardless of signal. The driver screen is designed for the cab — gloved one-handed input, large targets, no free text where a choice will do. Dispatch, itineraries, and timesheets moved into the same app, so driver, dispatcher, and office finally look at one source when billing or compliance asks.
Just as important is what we ruled out, and why:
Trip events append locally with device timestamps and sync in order, so an auditor reads one coherent log regardless of connectivity.
One-handed, high-contrast inputs with big targets and no free text where a choice will do — the road set the interaction budget.
Itineraries, stops, and timesheets came into the same app, so dispatch, driver, and office finally look at one source.
Delivered by the systems pod — 2 engineers over 9 weeks, with working increments reviewed with the client every week.
Obstacle
Early sync testing showed logs arriving out of order after multi-day offline runs — device clocks drifted between coaches, and naive timestamp sorting interleaved one trip's events with another's.
Handled: We rebuilt ordering around an append-only sequence with server-side reconciliation and a clock check-in at every sync, so the auditor's view stays coherent even when a coach was dark for days.
Obstacle
The two most resistant drivers ran the app and paper in parallel for weeks, convinced the office would blame them the first time the app lost anything.
Handled: The operations manager set a cutover date once the sync fixes shipped, and the app's end-of-day summary — the log-close the clipboard was always supposed to be — did the persuading.
The headline: every active coach logging digitally, with exports matching the audit format on first submission — Paper logs → app-native trip records, read from Compliance audit walkthrough. A second check: trip completion to billing-ready lag at 9 days → 2 days.
Billing stopped lagging operations: the bookkeeper closes the week from exports that describe what actually ran, and the gap between a trip and its invoice narrowed from more than a week to a couple of days. Hours-of-service moved from trust to record — the operations manager answers questions with a log, not a phone call to a driver mid-route. Drivers, initially the skeptics, now close the day's log at the last stop instead of ending the evening with clipboard arithmetic, and dispatch stopped re-faxing itineraries entirely.
The result was read from Compliance audit walkthrough against the pre-engagement baseline over the stated window, with a guardrail check on trip completion to billing-ready lag. Where platform-reported numbers and business outcomes differ, this record says which layer it is quoting.
What we would do differently
We would co-design the driver screen in a parked bus from the first week — the cab's vibration and sunlight shaped decisions that a meeting room never would have.
[ Related service ]
[ Related builds ]
Plastic cards Wallet passesAll active memberships issued as Wallet passes over the first renewal season, with gate scan time logged by the ticketing system
62% 89%Share of digital tickets validated offline-capable at first launch of the trial season, read from the operator's validation logs
[ Next step ]
Next case study