End-to-end fleet intelligence
A three-repo fleet platform: a Capacitor driver app, a NestJS API, and a Next.js ops dashboard with live Mapbox tracking, trips, geofences and analytics.
The challenge
Fleet operators needed reliable GPS tracking that keeps recording even with the phone screen off and on patchy mobile connections, plus a real-time operations view that managers could trust for trips, geofences and analytics.
The outcome
Background GPS with offline-first PowerSync sync and a dual-path ingestion pipeline now delivers sub-second live tracking and durable, gap-free trip history across iOS, Android and the web dashboard.
Overview
Tarales is a three-repo fleet platform. The Capacitor + Vue driver app records background GPS on iOS and Android — even with the screen off — streams live ticks over Socket.io, and persists every point offline via PowerSync SQLite with automatic sync when connectivity returns. The NestJS API handles REST, geofencing, trip storage and BullMQ job queues on PostgreSQL and Redis. The Next.js dashboard at tracking.jnaugusto.com gives fleet managers live Mapbox maps, trip analysis, geofence editing, driver and vehicle rosters, and analytics.
What I built
Driver app (Capacitor + Vue 3): background GPS, bad-fix rejection, offline PowerSync SQLite, and live Mapbox tracking with route thumbnails
Dual-path ingestion — volatile Socket.io ticks for sub-second dashboard updates plus durable PowerSync CRUD uploads
Auto-finalizes orphaned trips; discards noise trips under 50 m / 30 s
Live fleet dashboard with custom Mapbox pin markers, driver roster, geofence alert toasts, and overview KPIs
Trip intelligence: full GPS traces, speed/elevation charts, GPX export, and reverse-geocoded summaries
Interactive geofence editor, tokenized driver invites, vehicle fleet grid, and time-range analytics
Real-time Mapbox map with driver markers, streaming roster, and driving/stopped/speeding status.
Full trip view — route map, metrics, speed and elevation charts, GPX export, and geocoded start/end stops.
Circle and polygon zones on Mapbox with zone roster, entry/exit triggers, and live map overlays.