Aller au contenu
Application

Système de réservation

Système de réservation self-hosted — Vue 3, Node/Express, PostgreSQL

Aperçu de Système de réservation

6 (sur mesure)

Vues calendrier

19 types

Champs personnalisés

13

Langues

Le besoin

Les activités sur rendez-vous (salons, cliniques, studios, coachs) ont besoin d'un outil de réservation qu'elles maîtrisent — sans commission ni abonnement mensuel, et sans dépendre d'un agenda tiers.

La solution

  • Calendrier 100% sur mesure (6 vues : mois, semaine, jour, timeline, ressources) avec glisser-déposer complet : créer, déplacer, redimensionner.
  • Formulaires de réservation configurables par ressource : 19 types de champs personnalisés, avec durée et prix automatiques.
  • Page publique de réservation avec détection de conflits (aucune double réservation) et blocs d'indisponibilité respectés.
  • Tableau de bord admin (filtres, pagination, créneaux), e-mails traduits + rappel automatique J-1, upload de fichiers (MinIO/S3).

Décisions techniques

Vue 3 (Composition API, Pinia, Tailwind v4) pour une UI réactive ; Node 20/Express + Sequelize côté API ; PostgreSQL 16 pour garantir l'intégrité des créneaux au niveau base plutôt qu'en applicatif. Sécurité JWT (bcrypt, Helmet, rate limiting) et déploiement Docker en une commande.

Résultat

Un système de réservation complet et auto-hébergé : calendrier sur mesure (6 vues), formulaires personnalisables et zéro double réservation.

Ce que j'en retiens

La prévention des collisions se joue en base, pas dans l'UI : une contrainte PostgreSQL bien posée est plus fiable que dix vérifications côté client — et un calendrier sur mesure évite d'hériter des limites d'une lib tierce.