Skip to content
fr

CTO · 2026–now

RetroRoads

Alban Pasquelin has been CTO of RetroRoads since May 2026, a consumer app for classic cars whose three parts he architected — a GraphQL API, an admin panel and an Expo mobile app — with content translated into twenty languages.

import { Express5, Apollo, TypeGraphQL, TypeORM } from '@/stack'
export function buildRetroRoads(schema: GraphQLSchema): [Api, AdminPanel, MobileApp] {

RetroRoads is a consumer app for classic-car enthusiasts, currently in private beta. Three parts: an API, an admin panel and a mobile app.

const [api, adminPanel, mobileApp] = build({ from: schema })

The GraphQL schema is the source of truth. Clients do not write their own types: they consume a mirror generated from that schema. When the API changes, the apps find out at compile time rather than when a user hits an empty screen.

type ClientTypes = CodegenMirror<typeof schema> /** one source of truth **/

Who can see which content, and when, is decided by a single service instead of being scattered across every query. A privacy rule changes in one place. Content is translated into twenty languages.

const visible = visibilityService.resolve(content, viewer, locale)

The mobile app carries native maps, GPS route recording, CarPlay and Android Auto — because a road log gets read at the wheel, not on foot.

expoApp.use(nativeMaps, gpsRouteRecorder, carPlay, androidAuto)
return {
systemsArchitected: 3, /** systems architected **/
languages: 20, /** languages **/
sourceOfTruth: 1, /** source of truth **/
}
}

Experience