- Nature
- Produit en ligne
- Statut
- En production
- Stack
- Next.jsNestJSPrismaPostgreSQLRedisIAMarketplace
Acheter une voiture tuning ou une moto préparée d'occasion, c'est acheter à l'aveugle : on ne sait ni ce qui a été modifié, ni si le véhicule passera le contrôle technique, ni si l'assurance suivra. Atelier du Tuning répond par la traçabilité — et par une analyse IA qui lit l'annonce avant vous.
Ce que fait la plateforme
- Analyse IA d'annonce : on colle le texte ou le lien (Leboncoin, La Centrale, Facebook) ; l'agent rend un score de confiance sur 100, les red flags, les documents à exiger du vendeur et les questions à poser. Gratuit pendant la bêta.
- Annonces et pièces avec champs de conformité France : homologation / réception à titre isolé, contrôle technique applicable, assurance informée, usage route / circuit / à vérifier.
- Garages et builds publics : documenter une préparation, puis vendre le véhicule depuis sa fiche.
- Messagerie, favoris, signalements, back-office de modération avec matrice de permissions (RBAC).
Architecture
- Monorepo pnpm :
apps/api(NestJS),apps/web(Next.js App Router),packages/shared(types, schémas Zod, constantes) — un seul contrat entre le front et l'API. - Repository pattern strict : les services n'injectent jamais Prisma directement, chaque agrégat passe par son
XxxRepository. Zéroas any:z.inferet types Prisma partout. - Découpage par verticales fonctionnelles (annonce, pièce, garage, messagerie…), pas par couche technique.
- i18n
next-intlcôté web etnestjs-i18ncôté API, FR par défaut, EN.
Sécurité et RGPD
- Cible OWASP ASVS niveau 2 : mots de passe Argon2id + pepper, JWT d'accès 15 min, refresh 7 jours en cookie HttpOnly avec rotation et détection de réutilisation, rate limiting par IP, utilisateur et endpoint sensible, Helmet, CORS restrictif.
- Uploads : détection MIME réelle, taille maximale, stockage S3 privé (MinIO) et URLs signées.
- Journal d'audit sur l'authentification, les annonces, les documents et les actions d'administration.
- RGPD : export des données, suppression / anonymisation du compte, rétention configurable, registre des traitements documenté.
Ce qui a été difficile
- Faire dire à un LLM des choses utiles et prudentes sur un véhicule modifié : l'agent signale les risques (CT, assurance, RTI/DREAL) sans jamais donner de conseil juridique définitif, et refuse les annonces qui promeuvent un usage dangereux sur route ouverte.
- Le SEO programmatique d'une marketplace :
generateMetadata, canonical, JSON-LD, sitemap dynamique — sans indexer les pages vides.
Exploitation
Docker Compose sur VPS OVH derrière Caddy et Cloudflare ; sauvegardes Postgres quotidiennes ; erreurs dans GlitchTip, logs et métriques dans Grafana / Loki, sondes Uptime Kuma. C'est cette pile qui héberge aussi les quatre autres produits.
Installation sur votre infrastructure
Cette application peut être déployée sur votre propre serveur — VPS, cloud privé ou on-premise — en instance dédiée : votre nom de domaine, votre base de données, vos données chez vous. Je prends en charge l'installation, le durcissement du serveur, les sauvegardes, la supervision et la maintenance, ainsi que les adaptations fonctionnelles à votre métier.