Cost per mile — trailing 12 weeks
Fleet average, weekly$/miMonthly spend by category
Feb – Jul 2026$kNeeds attention
15 alerts · scrolls- !Weather — severe t-storm watch until 8p: 3 crews on sites in the watch area.6:38a
NWS alert · crews notified by broadcast.
- !DVIR defect — U-078: air line leak reported on pre-trip.7:42a
Vehicle held. Draft work order ready.
- !License expiring: J. Reyes, CDL-B in 23 days.Jul 30
Renewal reminder sent Jul 12 — no upload yet.
- !Fuel exception — U-092: 41 gal purchased; tank holds 34.Jul 29
Card 8841 · Speedway #204, 11:48 pm.
- !Inspection anomaly — U-078: brakes marked OK while brake work order is still open.7:05a
- !Deep check skipped — U-092: D. Whitfield skipped the 30-use photo survey.Jul 29
Short inspection completed. 2nd skip this month.
- !PM overdue — U-104: PM-B service past due by 240 mi.Jul 29
- iStopped mid-route — U-078: no movement for 22 min at Jefferson St.9:04a
Past due
Action needed| U-183 | Registration renewal · lapsed Jul 24 | Lapsed |
| U-104 | PM-B service · overdue 240 mi | Overdue |
| U-062 | Coolant flush · overdue 12 days | Overdue |
Coming up
Next 14 days| U-078 | PM-A service · due in 310 mi | Book now |
| U-201 | DOT annual inspection · Aug 14 | Scheduled |
| U-155 | Tire rotation · in 1,100 mi | Upcoming |
| U-217 | Brake job — WO-1042 · at Loudon Truck Svc | In progress |
At launch
Everything you see on this screen works on day one.
- LiveQueue chips are buttons — click one and you land in the queue where that work gets cleared; a queue at zero drops off the strip entirely
- NoteDay one the strip carries punch corrections, open defects, and expiring documents. Deep-check reviews, purchase requests, low stock, tools overdue, incidents, and urgent acks appear as their phase-2 modules land
- LiveSix stat tiles: on the clock, vehicles active, utilization, cost/mile, open defects, PM compliance
- NoteUtilization and PM compliance stay thin until a few weeks of trips and services accumulate
- LiveUrgent broadcast banner with acknowledgement tracking
- LiveNeeds-attention feed — defects, expiring licenses, fuel exceptions, weather
- NoteDay one the only inspection rule is the deterministic one: marked OK while a defect is open. Pattern-based anomalies wait for history
- LiveCost-per-mile and spend charts
- NoteMaintenance costs join the chart in phase 2 — day one it's fuel only
Still to come on the dashboard
- P2Live crew map tile and storm-mode board
- P2Incidents queue chip once the accident kit ships
- P2Manager push notifications — punches and roll call, riding the broadcasts build
- P3Statistical inspection-anomaly detection (needs months of baseline)
- P3Leaderboard + points standings once engagement unlocks
- P4Custom report widgets you arrange yourself
| Unit | Vehicle | Status | Driver | Odometer | Health | Next PM |
|---|---|---|---|---|---|---|
| U-104 | 2021 Freightliner MT45 · Box | Active | M. Okafor | 112,480 mi | PM overdue | −240 mi |
| U-078 | 2020 Isuzu NPR-HD · Box | Held | D. Whitfield | 134,902 mi | 1 critical defect | 310 mi |
| U-217 | 2023 Ford Transit 350 · Van | In shop | — | 48,213 mi | WO-1042 open | 3,120 mi |
| U-131 | 2022 Ram ProMaster 2500 · Van | Active | J. Reyes | 61,020 mi | No defects | 1,850 mi |
| U-201 | 2023 Chevy Silverado 2500 · Pickup | Active | S. Patel | 41,268 mi | No defects | 2,730 mi |
| U-092 | 2019 Ford F-250 · Pickup | Idle 6 days | — | 98,770 mi | Fuel exception | 4,400 mi |
| U-155 | 2024 Ford Transit 250 · Van | Active | T. Nguyen | 22,314 mi | No defects | 5,980 mi |
| TR-12 | 16 ft utility trailer | Active | — | — | No defects | Nov |
| TR-07 | 14 ft enclosed trailer | Idle | — | — | No defects | Oct |
| EQ-208 | Skid steer | In shop | — | 214 hrs | Hydraulic drip | 250 hrs |
| EQ-113 | Plate compactor | Active | — | 88 hrs | No defects | 120 hrs |
| EQ-334 | 72" zero-turn mower | Active | — | 402 hrs | No defects | 450 hrs |
At launch
Everything you see on this screen works on day one.
- LiveThe full asset register — vehicles, trailers, heavy and light equipment
- LiveAdd asset with VIN lookup, or bulk CSV import from the insurance schedule
- LiveFilter chips by class and status, sort by any column, search everything
- LiveVehicle detail: identity, compliance docs, assigned driver, meter
- LiveDefect queue — driver flags land here with status, note, and cost
- NoteWarranty dates are captured at intake day one; the warranty banner fires when phase-2 work orders ship
Still to come in Assets
- P2Work orders proper — vendor assignment, magic links for the outside mechanic, parts and labor
- P2Inventory: parts, tools, and supply stock per asset
- P2The paid deep-check survey (needs ~30 uses per asset before it can fire)
- P3Replace-vs-repair analysis with book-value thresholds
Transactions
WEX API · synced 6:12a| When | Card → vehicle | Person (PIN) | Gal | $/gal | Total | Network | Flag |
|---|---|---|---|---|---|---|---|
| Jul 30 · 6:41a | Truck 7 → U-104 | M. Okafor ••51 | 38.2 | $3.29 | $125.68 | CITGO | — |
| Jul 29 · 11:48p | U-092 | PIN not recognized | 41.0 | $3.44 | $141.04 | Speedway · out | Overfill |
| Jul 29 · 2:10p | U-131 | J. Reyes ••83 | 24.6 | $3.55 | $87.33 | Out-of-network | — |
| Jul 28 · 7:02a | U-155 | T. Nguyen ••64 | 22.1 | $3.31 | $73.15 | CITGO | — |
| Jul 28 · 6:44a | Truck 7 → U-104 | M. Okafor ••51 | 11.4 | $3.31 | $37.73 | CITGO | — |
Exceptions
Auto-flagged by rules- !Overfill — U-092: 41 gal purchased; tank holds 34. Card used at 11:48 pm.Jul 29
Assigned to Alesha · driver response requested
- !PIN not on manifest — U-131: PIN ••29 fueled a truck they weren't checked into.Jul 27
Resolved — shop run, noted by dispatcher
- iPrice outlier: $3.89/gal at an out-of-network stop; in-network was 0.4 mi away.Jul 25
Cards & PINs
Mirror of WEX · auditedAt launch
Everything you see on this screen works on day one.
- LiveFuel transactions imported from WEX — card, vehicle, person, gallons, price
- NoteDay one this is a scheduled import; live API sync lands in phase 2
- LiveExceptions auto-flagged: overfills, unrecognized PINs, price outliers
- LiveCards & PINs registry mirroring WEX
- LiveSpend, price, and MPG stat tiles
- NoteFleet MPG needs pump odometer readings — accuracy improves over the first month
Still to come in Fuel & costs
- P3Unified cost ledger — every repair, part, and fee posts here
- P2Live WEX API sync replacing the manual import
- P2Configurable exception rules (capacity, hours, PIN mismatch)
- P4Accounting export and per-unit budget targets
| Driver | License | Medical cert | HOS today | Safety score · 8 wks | Assigned |
|---|---|---|---|---|---|
| T. Nguyen | CDL-B · 2028 | Exp in 5 days | 7h 55m | 95 | U-155 |
| J. Reyes | Exp in 23 days | Valid · 2027 | 4h 10m | 88 | U-131 |
| M. Okafor | CDL-B · 2027 | Valid · 2027 | 6h 40m | 92 | U-104 |
| S. Patel | Class D · 2029 | n/a | 8h 00m | 91 | U-201 |
| D. Whitfield | CDL-B · 2027 | Valid · 2028 | 2h 05m | 79 ▼ | U-078 |
Safety scores are imported from the fleet's existing Cambridge Mobile Telematics program (Federated DriveSAFE — the Bluetooth tag in each vehicle plus the CMT app) — entered from the insurer portal until an API/export path is arranged — so drivers keep one scoring setup, not two. Expiry alerts fire at 60 / 30 / 7 days to driver + manager.
Directory
roles gate screens · language follows the person| Name | Role | Type | Language | Status |
|---|---|---|---|---|
| N. Amble | Owner | Permanent | English | Active |
| S. Amble | Owner | Permanent | English | Active |
| Alesha Rodriguez | Manager | Permanent | English | Active |
| M. Okafor | Driver | Permanent | English | Active |
| J. Reyes | Driver | Permanent | Español | Active |
| T. Nguyen | Driver | Permanent | English | Active |
| D. Whitfield | Driver | Permanent | English | Active |
| A. Brooks | Driver | Permanent | English | Active |
| S. Patel | Driver | Permanent | English | Active |
| D. Ríos | Driver | Seasonal | Español | Active |
| L. Vargas | Mechanic | Permanent | Español | Active |
| M. Torres | Driver | Seasonal | Español | Active |
| R. Delgado | Driver | Permanent | Español | Active |
| C. Jensen | Driver | Permanent | English | Active |
| K. Osei | Driver | Permanent | English | Active |
| P. Novak | Dispatcher | Permanent | English | Active |
| G. Fuentes | Driver | Seasonal | Español | Active |
| J. Carter | Driver | Seasonal | English | Archived |
Time clock — today
23 on the clock · live| M. Okafor | In 5:58a · at the shop · driving U-104 | 4h 12m | On clock |
| T. Nguyen | In 6:01a · at the shop · now at job 4 | 4h 09m | On clock |
| D. Whitfield | In 7:31a · shop kiosk | 2h 39m | On clock |
| A. Brooks | In 6:45a · remote · Elm Ridge HOA (GPS) | 3h 27m | On clock |
| R. Chen | Out 2:12p · at the shop · shift ended | 6h 00m | Off |
Timesheets — week of Jul 27
Closes Sunday| M. Okafor | 38h 20m | OT 2h 10m | Ready |
| J. Reyes | 39h 05m | — | Ready |
| D. Whitfield | 31h 40m | — | 1 edit · audited |
Fix a timesheet — D. Whitfield · Thu Jul 30
Every change needs a reason → audit log| In · 7:31a | Shop kiosk · at the shop | ||
| Out · — | Missed punch-out · flagged by the nightly check | Missing |
4:00p is suggested from his last GPS ping at the shop. The reason is required, D. Whitfield is notified of the change, the week recalculates, and the corrected total is what exports to ADP.
At launch
Everything you see on this screen works on day one.
- LiveDriver and staff directory with license and medical-cert expiry tracking
- LiveTime clock — punches with location, live on-the-clock view
- LiveTimesheets with edit-in-place corrections and required reasons
- NoteRate segments are recorded day one and ADP computes blended overtime; the crew-facing rate switcher and in-app OT report land in phase 2
- LiveTime-off requests, the approval queue, and the team calendar — the Google Form retires day one
Still to come in People
- P2Injury reports, incident cases, and emergency contacts
- P2CMT / Federated DriveSAFE safety scores imported into the driver list
- P3Engagement tab: leaderboard, points bank, deep-check bonuses
- P3Knowledge base authoring — the crew's searchable Q&A
- P2Remote-punch restriction tiers (they need job-site geofences)
- P2Crew-facing rate switching and the in-app blended-OT report
- P3Employee manual uploads with tracked acknowledgement
Cost per mile by class
July · fuel + maintenance + fixedReplace-vs-repair watchlist
12-mo maintenance vs value| U-078 | 2020 Isuzu NPR-HD | $8.9k maint · 31% of value | Review |
| U-092 | 2019 Ford F-250 | Rising trend · 3 WOs in 90 days | Watch |
Quick pull
any period · exports with current filtersPunctuality PTO — July
the report calculates · you decide · under 20 min = earns 8h by rule of thumb| Name | Days late | Minutes total | Gets PTO? |
|---|---|---|---|
| M. Okafor | 1 | 4 | |
| D. Ríos | 0 | 0 | |
| T. Nguyen | 15 | 17 | |
| D. Whitfield | 6 | 54 |
Scheduled reports
email digests per audienceAt launch
Everything you see on this screen works on day one.
- LiveQuick pulls — timesheets, fuel, punctuality, asset register, compliance
- LiveExport to CSV or PDF, ready for payroll and the insurer
- LiveRaw punch history — the pull everything else is built from
- NoteThe punctuality-PTO incentive report needs an agreed expected start time and a full month of punches; it turns on after the first complete pay cycle
Still to come in Reports
- P2Scheduled email delivery on your cadence
- P2Incident and injury history joins the quick pulls
- P4Custom report builder — pick fields, filters, and grouping
- P4Public API access for your own tooling
Active trips
6 out| Driver | Unit | Status | Speed | Where | Job | ETA | Last update |
|---|---|---|---|---|---|---|---|
| U-078 | Stopped | 0 mph | Jefferson St | — | — | 0:22 ago | |
| U-131 | En route | 38 mph | Baxter Ave | 6 / 11 | 10:52a | 0:04 ago | |
| U-104 | En route | 54 mph | I-64 W | 3 / 9 | 11:15a | 0:01 ago | |
| U-155 | At stop | 0 mph | Elm Ridge HOA | 4 / 9 | — | 0:12 ago | |
| U-201 | En route | 31 mph | Preston Hwy | — | 10:40a | 0:02 ago | |
| U-119 | En route | 44 mph | River Rd | 2 / 8 | 11:02a | 0:03 ago |
At launch
This screen is the one phase-1 page that starts partly dark — live positions need GPS, which ships in phase 2.
- LiveThe trips table works day one: who is out, in which truck, with which riders, towing what, and when their trip started and ended
- LiveSearch by person or unit, and click a driver to see their day — punch, departure, each site they checked into
- NoteDay one those rows come from tag taps and check-ins, not from GPS — so you get "Diego started a trip in U-104 at 6:26a and checked into Elm Ridge at 7:02a," not a moving dot
- NoteThe map itself, live speed, and ETAs turn on in phase 2 when phone GPS starts reporting during trips. Nothing goes in the vehicles either way
Still to come on the live map
- P2Geofences around every saved site, with arrivals and departures detected automatically
- P2Trip replay — scrub a finished trip minute by minute instead of reading its timeline
- P2Storm mode: the dispatch board takes over this screen
- P2Route progress ticks flip from driver-tap to automatic
- P2Shareable ETA links for a client or a crew lead
Open question
- ?Should a map dot represent the person or the vehicle? A truck with three crew aboard is one dot today. Person-dots answer “where is Diego” directly but stack on top of each other in a shared truck; vehicle-dots stay clean but need the roster underneath to answer for a rider. A third option: vehicle dots, with the driver’s name as the label and riders listed on click.
Tomorrow's routes, built in minutes
Not built yet — this page arrives in phase 2. Here's what it will carry:
- P2Saved site library pulled from Jobber
- P2Drag-ordered stops per crew, published to phones
- P2Storm mode for callouts and re-routing
- P2Manual Jobber pull for jobs added minutes ago
One channel to the whole crew
Not built yet — this page arrives in phase 2. Here's what it will carry:
- P2Broadcasts with read and acknowledgement tracking
- P2Urgent banners that follow crews across every screen
- P2Replies on broadcasts — the office hears back
- P3Shop-Spanish delivery per person's language
Defects in, work orders out
Not built yet — this page arrives in phase 2. Here's what it will carry:
- P2Work order board: triage, in progress, waiting parts, done
- P2PM schedules by mileage, hours, or calendar
- P2Defects from driver inspections land here automatically
- P2Vendor history and outside-mechanic magic links
Parts, tools, and supplies
Not built yet — this page arrives in phase 2. Here's what it will carry:
- P2Stock levels with low-stock alerts from yellow tag taps
- P2Purchase requests: approve → ordered → received
- P2Tool checkout tracking — who has what
- P3Auto-drafted reorders from tap frequency
The plumbing behind the app
Not built yet — this page arrives in phase 1. Here's what it will carry:
- P1Entitlements and grants — who sees what
- P1Integration keys and sync schedules
- P1Company profile, depots, and expected start times
- P1Platform health — integration sync status, renewal and deadline countdowns, dependency and backup state, all in one place. Developer entitlement, held by the product owner only at launch and grantable later like any other
- P2Notification preferences per person and event
- P3Tauri desktop app and the separate sandbox build (browser "Add to Dock" covers it until then)
—
Open work order
Cost, trailing 12 months
Service timeline
Documents
auto-reminders onTags on this unit
the codes the phone readsTag registry
14 active| Tag ID | Linked to | Action | Label printed | |
|---|---|---|---|---|
| AX-9D41 | U-104 · dash | check-in | Jul 12 | |
| AX-3B77 | TR-12 · tongue | check-in | Jul 12 | |
| AX-51C8 | U-104 · trimmer line | supply | Jul 12 | |
| AX-2D60 | Shop · 2-cycle oil rack | supply | Jul 12 | |
| AX-8C19 | EQ-208 · frame | problem | Jul 12 | |
| AX-7A02 | U-131 · dash | check-in | Jul 12 | |
| AX-1F55 | U-155 · dash | check-in | Jul 12 | |
| AX-66E3 | TR-08 · tongue | check-in | Jul 19 | |
| AX-C218 | U-104 · service | service | Jul 19 | |
| AX-90BB | EQ-112 · deck | service | Jul 19 | |
| AX-4E71 | Shop · bar & chain oil | supply | Jul 19 | |
| AX-05AD | EQ-315 · frame | problem | — | |
| AX-B334 | TR-12 · service | service | — | |
| AX-77D9 | Shop · glove bin | supply | Jul 19 |
Color key — what a tap becomes
tap a color — or open this page from a real taghttps://demo.axlehq.io/driver.html#t=U-104 — then tap it with any phone: the crew flow opens, no sign-in. Variants: #t=TR-12 · #t=OIL · #t=EQ-208; the admin view resolves them too: demo.axlehq.io/#t=U-104. The tag is just a URL; the phone is the reader; the software decides what it means.
At launch
Everything you see on this screen works on day one.
- LiveTag registry — every commissioned tag, what it's linked to, and its action
- LiveCommission a blank tag: tap it, search the asset register, pick a category
- LiveColor categories you can add, recolor, and rename yourself
- LiveLabel generator — Avery 5523 sheets, horizontal or vertical, start-slot picker
- LiveTag detail: re-link, recategorize, reprint, retire
- NoteScan counts and last-seen dates begin accumulating the day tags go on assets
Still to come in Tag manager
- P2Lifecycle status (blank → active → retired) with filters
- P2Last-seen scan dates and possibly-dead tag detection
- P3Bulk edit: retire, re-link, or recategorize many tags at once
- P3In-app tag writing from a USB reader — no phone needed
- P3Tag detail drawer with the full audit trail