Car-Booking REST API for a Mobility Platform
A car-sharing / mobility platform
Overview
A Node.js REST API service that manages car bookings for a car-sharing / mobility platform. It sits between the consumer-facing booking apps and the upstream mobility fleet-management system, exposing a clean booking interface backed by a configurable fleet model.
The Challenge
The platform needed a dedicated booking backend that could talk to a third-party fleet/mobility provider’s configuration endpoints while presenting a stable, JWT-secured REST surface to its own web and build clients. Bookings had to be fleet-aware (each operating region/fleet has its own configuration) and deployable as a self-contained container.
What We Built
An AdonisJS 4.1 API application organized into Controllers (application, config and
uptime/health endpoints), Services, Models, Middleware and Ace CLI Commands. Fleet
behavior is driven by JSON configuration (default_fleet.json, fleets.json,
default_language.json) so a single codebase serves multiple operating fleets by
name. Authentication uses JWT via AdonisJS Auth; persistence runs through Lucid ORM
with interchangeable SQLite / MySQL / PostgreSQL backends. The service ships with a
Dockerfile and a staging docker-compose, GitLab CI, and structured logging through
Winston with syslog transport. Internal registration routes are flagged for
network-level protection.
Technologies & Approach
AdonisJS was chosen for a batteries-included MVC + ORM + auth stack on Node.js, keeping the booking domain logic concise. Axios handles outbound calls to the fleet provider, Moment manages time/availability windows, and the multi-driver Lucid config lets the same API run on a lightweight SQLite box or a production Postgres/ MySQL cluster.
Outcome / Impact
Delivered the booking backbone of the mobility product, maintained across roughly three years of activity (2019–2023). It demonstrates building integration-heavy, fleet-configurable services that bridge a studio’s apps to an external mobility platform.
Capabilities Demonstrated
- REST API engineering on Node.js with AdonisJS
- Multi-tenant/fleet configuration driven by JSON
- JWT authentication and route-level access control
- Pluggable persistence across SQLite, MySQL and PostgreSQL
- Containerized delivery with Docker, docker-compose and GitLab CI
- Third-party mobility/fleet API integration