Architecture & stack
Boring, proven technology arranged carefully — chosen for a product that buyers must be able to run, audit and extend without us.
Backend — NestJS · PostgreSQL/PostGIS · Redis · Socket.IO
A modular NestJS API: dispatch, pricing, journeys, payments, wallet ledger, safety, organizations, RBAC, notifications, tax engines, reports. PostGIS powers geo dispatch and zones; Redis backs queues and realtime fan-out; Socket.IO drives live tracking. 860 test cases across 69 suites at last build-time count.
Admin — Next.js 14 App Router
Operator console with live dispatch (search riders, click the map — no UUID typing), trip detail with map/timeline/settlement/tax, driver and rider 360°, zones editor, surge rules, payouts queue, incident queue, org billing, CMS, branding, and the public tokenized trip-tracking pages.
Mobile — two Expo (React Native) apps
Rider and driver apps on Expo SDK 54 with background location, live sockets, offline-tolerant flows, full i18n incl. RTL, dark mode, and store-build CI config (Codemagic) included. E2E flows run under Maestro.
Quality gates you inherit
All four codebases tsc-clean; 1,321 counted test cases (860 backend, 188 admin, 146 rider, 103 driver, 24 Playwright E2E) plus 7 Maestro flows. Playwright drives the real admin against a seeded stack; parity tests enforce i18n coverage.
Deploy
Docker Compose production stack with documented migration flow inside the production image; a hosted reference deployment runs the live demo. Installation and deployment docs walk the whole path, including first-admin bootstrap and demo seeding.