Invités et logistique d’événements NDA
High-End Events Guest Platform
Une plateforme en marque blanche pour des événements internationaux, qui gère les invités avec leurs hôtels, restaurants et activités.
01 / La problématique
Une marque premium internationale organise des événements qui accueillent de nombreux invités venus de plusieurs pays. Pour chaque événement, les organisateurs recueillent des informations détaillées sur les invités, répartissent les chambres d’hôtel et réservent restaurants et activités avant d’envoyer des listes à jour aux hôtels et aux prestataires. À la main, ça prend beaucoup de temps et les erreurs sont fréquentes. C’est aussi difficile à sécuriser.
02 / Ce que j’ai réalisé
En tant que lead développeur full-stack, j’ai conçu et développé la plateforme de A à Z. Le backend est une API AdonisJS 6 en TypeScript sur MySQL, avec Lucid ORM et la validation VineJS. Les e-mails transactionnels partent via Resend/SMTP sur des templates MJML, les PDF sont générés avec Puppeteer et Swagger documente l’API, le tout sous Docker. Le frontend est une app Next.js 15 avec NextAuth v5, TanStack Query, Tailwind CSS, shadcn/ui et next-intl (FR/EN). Chaque événement a sa propre déclinaison en marque blanche avec ses couleurs, son logo et ses textes. J’ai passé beaucoup de temps sur la sécurité, avec des permissions par rôle via Bouncer, des identifiants cuid non énumérables et une authentification durcie. La réinitialisation du mot de passe ne révèle jamais si un compte existe, l’inscription publique est désactivée et les mots de passe doivent être solides.
03 / Impact
La plateforme réunit tout le parcours des invités, du formulaire d’invitation jusqu’aux exports envoyés aux hôtels, restaurants et prestataires. Les organisateurs la reconfigurent pour chaque nouvel événement sans toucher au code.
Fonctionnalités principales
- 01Fiches invités détaillées avec voyage, nuits d’hôtel, régimes alimentaires et accompagnant (+1)
- 02Catégories d’invités
- 03Répartition automatique des chambres d’hôtel avec statistiques de remplissage
- 04Réservation des restaurants par créneau avec export Excel
- 05Réservation d’activités avec circuit de validation dans le back-office
- 06Exports Excel et PDF pour les itinéraires des invités et les prestataires
- 07Marque blanche multilingue configurable par événement (couleurs, logo, textes)
- 08Rôles et permissions
- 09Accès par jeton pour les personnes qui remplissent les formulaires
- 10Permissions par rôle (Bouncer), identifiants cuid non énumérables, aucune énumération des comptes à la réinitialisation du mot de passe, inscription publique désactivée et politique de mots de passe stricte
Stack technique
- Backend : AdonisJS 6 (TypeScript), MySQL, Lucid ORM, VineJS, Resend/SMTP avec MJML, Puppeteer (PDF), Swagger, Docker
- Frontend : Next.js 15, NextAuth v5, TanStack Query, Tailwind CSS, shadcn/ui, next-intl (FR/EN)