Real-time vehicle tracking
Google Maps integration with live markers, clustering, overlap handling, trip replay, time-range selection, and custom per-vehicle info windows.
Mobile app and API gateway for Truck Assist, covering live vehicle tracking, multi-format video streaming, alerts, and emergency response for fleet operators across South Africa.
Fleet operators needed one mobile app that could handle tracking, live camera feeds, driver behaviour analytics, emergency response, and technical fault logging, usable in the field on any device.
The platform had to combine data from disparate telematics APIs, GPS providers, and Firebase real-time streams into a predictable experience with low latency and reliable workflows.
The solution also needed resilience: multi-format video playback, dual-server failover, and real-time alerting that still works under unstable connectivity.
Two systems: an Ionic/Angular mobile app and a Node.js API gateway that normalises upstream telematics data into mobile-friendly payloads.
Mobile app
API gateway (BFF)
Upstream services
From real-time maps to sub-second live video, each module was built for the specific demands of fleet operations.
Google Maps integration with live markers, clustering, overlap handling, trip replay, time-range selection, and custom per-vehicle info windows.
Four player integrations (sub-1s latency, HLS, FLV, H5F) with keep-alive, multi-camera grid, adaptive selection, and fullscreen controls.
Chart-driven insights for distance breakdowns, day/night patterns, risk ratings, sorted comparisons, and normalised scaling for usability.
Realtime alerting with retention windows, client filtering, deduplication, seen-state tracking, and badge counts.
GPS-based panic alerts with two-step confirmation, plus enhanced emergency suite for specific clients (panic/lock/theft).
Historical reporting with time ranges, driver matching, channel bucketing, video classification, and risk analysis.
Full job card workflow: dynamic forms, multipart uploads, signature capture, and lifecycle tracking for technicians.
UI adapts per client type: technicians, emergency-focused clients, and full fleet dashboards, with multi-client switching.
Firebase Auth + guards, encrypted credential storage, session management, password resets, and force-logout capability.
A Node.js backend-for-frontend that aggregates and normalises upstream payloads into consistent app-ready data.
Vehicle data, markers, snapshots, tracking history, investigations, playlists, panic/theft, job cards, notifications, and geocoding, all behind one API surface.
DTO mapping normalises inconsistent upstream responses; pipelines handle bucketing, filtering, driver matching, and classification.
Primary + fallback base URLs with automatic failover and transparent retries to reduce downtime for operators.
Dedicated endpoints extract and serve HLS/FLV/H5F URLs per device channel so the app can choose the optimal stream format.
File and form submissions in one request for technical job cards, including photos and signatures.
The stack behind the mobile app, API gateway, and supporting services.
The platform ships one consistent experience across mobile, web, and high-urgency operational workflows.
iOS, Android (81 builds), and PWA from one Angular codebase.
<1s latency streaming with format fallbacks and controls.
BFF gateway with DTO normalisation and dual-server failover.
Panic/theft response, investigations, notifications, job cards.
I build mobile platforms for real operational problems.