Dev FullStack

Retour aux projets

i18n-chat

Plateforme d'envoi de messages multilingues pour une institution publique : un message rédigé une fois, livré traduit par e-mail, SMS ou WhatsApp

NestJSNext.jsTypeScriptPostgreSQLPrismaRedisBullMQDockerKubernetesGitHub Actions

Contexte du projet

Ce projet est parti d'un besoin précis d'une entité publique fédérale : communiquer avec des citoyens qui ne parlent pas tous la même langue. Les agents rédigent un message une seule fois, à partir d'un modèle ou en texte libre, et la plateforme le traduit puis le livre à chaque destinataire dans sa langue préférée, sur le canal de son choix. J'ai conduit le projet seul, de l'analyse fonctionnelle à l'infrastructure de déploiement.

Défis techniques

Le contexte public imposait un haut niveau d'exigence sur la protection des données : coordonnées chiffrées en base (AES-256-GCM), suppression automatique des données des destinataires anonymes après 30 jours, et journal d'audit immuable de toutes les actions. Il fallait aussi fiabiliser l'envoi en masse avec une file d'attente, gérer les modèles WhatsApp soumis à l'approbation de Meta, et rendre le fournisseur de traduction interchangeable (LibreTranslate auto-hébergé ou ModernMT). Enfin, la plateforme devait pouvoir être installée aussi bien sur les serveurs de l'institution que dans le cloud.

Galerie

  • Modèle à variables et ses traductions, ici en arabe avec affichage de droite à gauche
  • Un même envoi reçu par chaque destinataire dans sa langue
  • Suivi d'un envoi : canal, langue et statut de chaque message
  • Assistant d'envoi en quatre étapes
  • Destinataires, langue préférée et canaux de contact

Informations clés

Durée du projet
Mars – juin 2026
Rôle
Recherche UX/UI, développement Full Stack & DevOps
Client
Entité publique fédérale

Points clés

  • •Assistant d'envoi en 4 étapes, à partir d'un modèle ou d'un texte libre
  • •Traduction automatique avec fournisseur interchangeable (LibreTranslate, ModernMT)
  • •Livraison par e-mail, SMS et WhatsApp, avec suivi de chaque message
  • •Modèles à variables, traduits par langue, et gestion des modèles WhatsApp approuvés par Meta
  • •Import de destinataires en lot par fichier CSV
  • •Rôles administrateur, expéditeur et lecteur, avec journal d'audit immuable
  • •Chiffrement des coordonnées et purge automatique conforme au RGPD
  • •Déploiement sur site (Docker Compose) ou dans le cloud (Kubernetes), CI GitHub Actions