Infrastructure/Étude de cas 02
Dispo : plateforme de disponibilités
Plateforme de disponibilités des techniciens du cinéma suisse, hébergée sur Cloudflare et Supabase.
- Navigateur
- Worker Cloudflare (site statique)
- Supabase (base, comptes, fonctions)
- Resend (e-mails)
Objectif
Les équipes techniques se composent aujourd'hui surtout par le bouche-à-oreille. Dispo permet à une production de chercher, par fonction et par dates, un technicien réellement disponible, partout en Suisse. Les départements couverts sont notamment la caméra, la lumière, la machinerie et le son.
Principes du produit
Aucune page ne montre le calendrier d'une personne : une recherche ne révèle que les jours libres sur la période demandée. L'inscription se fait sur invitation d'un membre. Les tarifs sont indicatifs et ne servent jamais à trier les résultats. Le parcours d'un technicien peut être confirmé par les personnes qui étaient sur le même projet.
Architecture
Le site est statique, écrit en modules JavaScript, sans framework ni étape de build. Un Worker Cloudflare le sert, gère la redirection de l'ancien sous-domaine, le flux iCal et les liens courts de partage. Les données et les comptes sont sur Supabase (PostgreSQL, authentification, fonctions serveur), dans la région de Zurich. Les règles d'accès sont définies dans la base. Le site ne charge aucun script externe, ce qui permet une politique de sécurité de contenu stricte.
Déploiement et base de données
Chaque push sur la branche main déploie le Worker. La structure de la base n'est jamais modifiée à la main : chaque changement est un fichier de migration versionné dans le dépôt, appliqué par une GitHub Action. Chaque nuit, une autre vérification compare la base au dépôt et échoue au moindre écart. Les fonctions serveur sont déployées de la même façon.
E-mails et tâches planifiées
Les e-mails (confirmation, invitation, rappels) partent par Resend, avec un domaine vérifié et une politique DMARC stricte. Les tâches planifiées de la base gèrent la purge nocturne des données anciennes, les rappels par e-mail et la synchronisation des agendas iCal, uniquement pour les membres qui en ont relié un.
Données personnelles
Un registre des traitements au sens de la nLPD est tenu à jour avec chaque changement. L'application propose une page de confidentialité, l'export des données et des durées de conservation appliquées automatiquement. Les statistiques d'usage sont des compteurs anonymes, sans identifiant, et aucun outil d'analyse tiers n'est utilisé.
Choix d'hébergement
J'ai d'abord envisagé de l'héberger sur mon serveur TrueNAS. Ce n'était pas ma meilleure idée : plus compliqué que prévu. J'ai donc choisi des offres gratuites de services en ligne. Elles ont des limites (nombre d'e-mails par jour, mise en pause en cas d'inactivité) : le passage à une offre payante est prévu quand des productions l'utiliseront vraiment.