The problem
Commercial driving carries a heavy load of operational and regulatory detail — hours-of-service rules, pre-trip inspection checklists, route and logging requirements — and most of the tools that exist for it are either clunky enterprise fleet software or scattered PDFs. None of them are built for a single driver who just needs the right answer, fast, in the cab.
I drove commercially before moving into software, so this isn’t a hypothetical user for me — it’s the tool I wished I’d had.
What it does
- Trip logging that matches how a driver actually works, not how an office wants to file it.
- Inspection checklists that are quick to run and hard to skip steps on.
- Reference material for the rules and procedures a driver needs to recall under time pressure.
- Designed to be usable one-handed, glanceable, and reliable offline — the realities of the environment it runs in.
Screens, data, and any sample records shown in the public version of this project are synthetic — no real driver or carrier data is included.
How I approached it
The current work is a phase-0 rebuild: rather than bolting features onto an early prototype, I reset to a clean architecture so the app can grow without collapsing under its own weight.
- Local-first data with Room, so the app works with no signal and syncs when it can.
- Jetpack Compose UI built around large touch targets and high-contrast, glanceable screens for in-cab use.
- A clear separation between the domain logic (rules, validation, logging) and the UI, so the parts that must be correct can be tested in isolation.
Engineering practices
- Test-driven where it counts: the compliance and logging logic is covered by unit tests, because that’s the code where a wrong answer has real consequences.
- Instrumented tests for the critical user paths on a real device/emulator.
- Structured logging and a deliberate cleanup discipline so debug instrumentation never ships.
Outcome & next steps
The phase-0 rebuild is establishing the foundation: clean architecture, a tested core, and a UI honest about its environment. From here the roadmap is feature depth — richer logging, expanded reference content, and on-device polish.
This project is the clearest expression of the thing I do well: take real operational domain knowledge I lived through, and turn it into software that respects how the work actually gets done.