Billetterie Interne
Dashboard de gestion d'événements et ventes en temps réel
Dashboard interne conçu et développé en freelance pour un organisateur d'événements. Plan de salle 2D/3D, ventes en temps réel via WebSocket, gestion automatisée des tarifs et TVA. Projet sous NDA.
1
Mois
Conception à production
WebSocket
Temps réel
3D
Visualisation sièges
<200ms
Latence WS
100%
Couverture fiscale
Dashboard temps réel · Plan de salle 2D/3D · Gestion tarifs & TVA · WebSocket bidirectionnel · NDA
Le projet
Le problème
Les salles de spectacle et organisateurs d'événements gèrent leurs réservations avec des tableurs Excel ou des outils fragmentés. Aucune visibilité temps réel sur les ventes, pas de plan de salle interactif, gestion fiscale manuelle.
La solution
Un dashboard unifié avec plan de salle 2D/3D, ventes en temps réel via WebSocket, gestion automatisée des tarifs et TVA. L'organisateur pilote ses événements depuis une interface unique.
Mon rôle
Développement full-stack du dashboard : API NestJS avec WebSocket Gateway, frontend Next.js avec Seats.io, système de tarification multi-TVA, base PostgreSQL optimisée pour le temps réel.
Résultats
Dashboard livré en 1 mois. Latence WebSocket < 200ms, 100% de couverture fiscale (TVA multi-taux), visualisation 3D performante, adoption immédiate par l'équipe opérations.
L'application en images
Dashboard temps réel, plan de salle interactif 2D/3D, tarification et gestion des réservations.

Ce que j'ai construit
Dashboard temps réel, plan de salle 2D/3D, tarification multi-TVA et gestion complète des réservations et événements.
Dashboard Temps Réel
KPIs actualisés en temps réel via WebSocket : billets vendus, revenus, taux de remplissage, événements actifs. Feed d'activité avec indicateur de connexion live.
Plan de Salle 2D
Plan de salle interactif Seats.io avec code couleur : disponible, occupé, sélectionné, inaccessible. Sélection multiple, calcul automatique du sous-total, légende contextuelle.
Visualisation 3D
Vue isométrique du théâtre via Seats.io avec perspective 3D. Toggle 2D/3D instantané, scène visible au premier plan, même interactivité qu'en 2D.
Tarification & TVA
Gestion multi-tarifs avec calcul automatique TTC. Support des taux de TVA différenciés (20%, 5.5%, 0%). Tableau CRUD avec statut actif/fermé par catégorie.
Gestion Événements
Création et pilotage d'événements avec dates, lieux, capacités. Association plan de salle, suivi des ventes par événement, statuts et archivage.
Réservations
Liste exhaustive des réservations avec filtres avancés, recherche instantanée, statuts colorés (confirmé, en attente, annulé). Export CSV et pagination.
WebSocket Bidirectionnel
NestJS WebSocket Gateway pour la diffusion temps réel. Events : nouvelles réservations, mises à jour de statut, notifications. Reconnexion automatique, heartbeat.
Sécurité & Accès
Authentification JWT, rôles admin/opérateur, validation Zod de toutes les entrées. Rate limiting, CORS strict, logs d'audit sur les opérations sensibles.
Décisions techniques
Une architecture Clean avec DDD et CQRS, pensée pour la performance temps réel et la scalabilité des réservations concurrentes.
NestJS + WS Gateway
API REST + WebSocket Gateway sur NestJS. Modules : auth, events, seats, bookings, pricing. Guards JWT, pipes de validation, interceptors de logging.
PostgreSQL
Schéma relationnel optimisé : events, seats, bookings, pricing_tiers. Index sur les requêtes temps réel, transactions ACID pour les réservations concurrentes.
Next.js Frontend
Dashboard React avec Server Components, Seats.io pour le plan de salle, state management léger. RTK Query pour le cache, WebSocket natif pour le temps réel.
Déploiement
Conteneurs Docker, CI/CD GitHub Actions, PostgreSQL managé. Variables d'environnement validées au boot, health checks, zero-downtime deployments.
Technologies utilisées
Questions fréquentes sur ce projet
Les questions que mes clients m'ont posées sur cette mission.
- Quel était le challenge technique principal ? +
- Construire un système de billetterie complet (plan 2D/3D interactif, ventes temps réel WebSocket, calcul automatique TVA et tarifs) en solo en 1 mois pour un événement précis avec deadline ferme.
- Pourquoi WebSocket et pas du polling ? +
- Le plan de salle devait refléter en temps réel les places vendues par d'autres opérateurs en parallèle. Polling = latence et conflits, WebSocket = synchronisation sub-200ms et UX fluide pour les agents en caisse.
- Combien de temps de la conception à la mise en production ? +
- 1 mois calendaire, en solo, avec un client en parallèle. Adoption immédiate par l'équipe opérations le jour J.
- Quelle stack technique as-tu utilisée ? +
- Next.js (dashboard), Node.js (API + WebSocket), PostgreSQL, Three.js pour le rendu 3D du plan de salle. Déploiement sur infra cliente.