White Label Fleet Tracking Platform
All projects

White Label Fleet Tracking Platform

Fleet and Logistics

2026 - Present

1
Cloud Functions for the whole API
80
Concurrent requests per instance
OsmAnd
Tracker protocol supported

About the project

A white label GPS fleet tracking platform on Firebase, where a reseller serves its own clients under its own brand and subdomain, with no server to administer.

My role: Architect and full stack developer, from the tracker ingestion endpoint to the map interface and the multi-tenant rules.

I built this platform so a reseller could enter the fleet tracking market without operating any infrastructure. The classic model needs a permanently running server ingesting GPS frames, a websocket layer to push positions and a database sized for the worst case. For a reseller with a handful of clients, that fixed cost arrives long before the first revenue does.

I removed the server entirely. The whole REST API and the tracker ingestion endpoint live in a single Cloud Function running Express 5 with a concurrency of eighty, so one instance absorbs a large number of vehicles before a second one starts. Real time delivery uses Firestore listeners instead of a websocket layer, which means the browser subscribes directly to the data and the push infrastructure I would otherwise have had to build and keep alive simply does not exist.

The front end is React 19 on Vite with a Leaflet map over OpenStreetMap, installable as a progressive web app, and a small Zustand store fed by the Firestore listeners. Multi-tenancy runs on Firebase Auth custom claims carrying the tenant and the role, with Firestore rules enforcing isolation at the database rather than in application code. Trackers connect over the OsmAnd protocol, which any smartphone or standard GPS box already speaks, so onboarding a vehicle needs no proprietary hardware. A Tunisian reseller runs the platform in production today, serving its own fleet clients under its own brand, which is the model a second reseller would step into.

Main features

  • 🗺️ Live fleet map: Vehicle positions update on a Leaflet map fed directly by Firestore listeners, with no websocket layer to operate.
  • 🏷️ White label resale: Each reseller serves its clients under its own brand on its own subdomain, from a single shared deployment.
  • 📡 Standard tracker protocol: Devices connect over OsmAnd, which smartphones and common GPS boxes already speak, so no proprietary hardware is required.
  • ☁️ One Cloud Function for the whole API: Express 5 with a concurrency of eighty keeps the running cost proportional to real usage.
  • 🔒 Isolation enforced in the database: Firestore rules apply tenant separation directly, so a bug in application code cannot leak another client's fleet.
  • 📲 Installable progressive web app: Managers open the fleet from a phone home screen without any store to publish to.
  • 🎬 Built in demo fleet: A scheduled function animates realistic vehicles, so a prospect sees a moving fleet before installing a single tracker.
  • 🚦 Status today: One reseller runs it in production. Onboarding a second one is a tenant to create and a subdomain to point, not a deployment to rebuild.

Problems and solutions

Problem: Fleet tracking normally requires a permanently running server to ingest GPS frames and a websocket layer to push positions. A reseller starting with a few clients pays that fixed infrastructure cost long before earning anything from it.

Solution: The entire API and ingestion endpoint run in one Cloud Function with high concurrency, and Firestore listeners replace the websocket layer altogether. Infrastructure cost now follows real usage instead of preceding it, which is what makes the reseller model viable from the first client.

Problem: A reseller cannot put its own name on a platform that shows someone else's. And once several resellers share one deployment, keeping each one's vehicles invisible to the others usually depends on every query in the application being written correctly.

Solution: Brand and subdomain are tenant configuration, so a reseller installs its identity without touching code. Isolation is enforced by Firestore rules at the database, not by application queries, so a mistake in the front end cannot expose another reseller's fleet.

Tech stack

React
TypeScript
Express.js
Node.js
Firebase
Firestore
PWA
Google Cloud Plateform