Fleetsguard: A tenant-scoped fleet safety platform consolidating 18 compliance modules.

Product · Fleet & Transportation · 2026

Fleetsguard

A tenant-scoped fleet safety platform consolidating 18 compliance modules.

Multi-phase replatformEngagement lead plus platform squad with embedded compliance SME.

Challenge

Trucking operators in Ontario face overlapping safety and regulatory obligations (NSC, CVOR, drug & alcohol testing, annual review, document expiries). Existing tools (Safety In Minutes and similar) showed the shape of the problem but were aging Angular + Ionic SPAs with brittle UX, no SSOT for documents, and no canonical permission model. The brief was to build the replacement.

Approach

  1. Mapped the live verified replica baseline: 18 compliance modules plus settings, with field matrices for drivers, fleet, insurance, NSC, SMS, fuel cards, gate passes, employees, and more.

  2. Designed a tenant-scoped URL pattern (/{tenantUuid}/...) with auth and session policy enforced at the route boundary.

  3. Built field-validation catalog and form-governance program covering every CRUD, with WCAG-checklist accessibility and AI-assist for fallback completion.

  4. Implemented document and attachment SSOT with upload pipeline, expiry alerting, and printer-ready PDF generation.

  5. Stood up the legacy system's data import as a one-time migration with reconciliation reporting.

  6. Wired admin control plane: identity normalization, route isolation, legacy-config audit, and platform admin shell with consistent listing UI.

Outcome

The platform replaces a fragile legacy SPA with a typed, tenant-isolated, audit-ready safety operations system. Fleet operators get one URL, one permission model, and one document store across all 18 modules — with expiry alerts, signed audit trails, and admin tooling that meets the standard their regulators expect.

Keep reading

More work.

Our own product

We build for clients on the same bench.

The team, the stack and the standards behind this product are the ones your project gets.