Aller au contenu
en

CTO · 2026–aujourd'hui

RetroRoads

Alban Pasquelin est CTO de RetroRoads depuis mai 2026, une application grand public dédiée à l'automobile de collection dont il a architecturé les trois briques — API GraphQL, panel d'administration et application mobile Expo — avec un contenu traduit en vingt langues.

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

RetroRoads est une application grand public pour les passionnés d'automobile de collection, actuellement en bêta privée. Trois briques : une API, un panel d'administration et une application mobile.

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

Le schéma GraphQL est la source de vérité. Les clients n'écrivent pas leurs propres types : ils consomment un miroir généré depuis ce schéma. Quand l'API change, les applications le savent à la compilation, pas au moment où un utilisateur tombe sur un écran vide.

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

La visibilité de chaque contenu — qui voit quoi, et quand — est décidée par un service unique plutôt que dispersée dans chaque requête. Une règle de confidentialité se change à un seul endroit. Le contenu est traduit en vingt langues.

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

L'application mobile embarque des cartes natives, l'enregistrement GPS des parcours, CarPlay et Android Auto — parce qu'un carnet de route se consulte au volant, pas en marchant.

expoApp.use(nativeMaps, gpsRouteRecorder, carPlay, androidAuto)
return {
systemsArchitected: 3, /** briques architecturées **/
languages: 20, /** langues **/
sourceOfTruth: 1, /** source de vérité **/
}
}

Parcours