$ cat README.md
Nouveau site de l’École Lerel, école de théâtre, d’improvisation et de cinéma, généré par un script de build Node sans dépendance.
Site public
- Cours, horaires et tarifs de la saison 2026-2027, avec deux tarifs par trimestre selon l’âge.
- Bandeau d’annonce piloté par un fichier de données, qui reste visible au défilement.
- Planning imprimable, en paysage.
- Carte vers la fiche de l’école, JSON-LD pour les moteurs de recherche.
Administration
- L’école modifie annonces, horaires et tarifs sans toucher au code, depuis son espace d’administration.
- Connexion via le SSO GotYeah (Keycloak), comme pour Notes.
- Publication sûre : le serveur valide la saisie, rend le site dans un dossier d’essai, et ne bascule le contenu servi que si le rendu réussit. Un gabarit cassé ne laisse jamais le site public à moitié rendu.
- Le contenu éditable vit dans un volume Docker, pas dans le dépôt : une seule source de vérité.
Durcissement
- CSP stricte, ressources à empreinte, garde-fou contre l’octet nul, déploiements sérialisés.
En ligne sur lerel.gautierchuinard.com, auto-hébergé.
New website for École Lerel, a theatre, improvisation and film acting school, generated by a dependency-free Node build script.
Public site
- Classes, schedules and fees for the 2026-2027 season, with two rates per term depending on age.
- Announcement banner driven by a data file, kept visible while scrolling.
- Printable weekly planner, in landscape.
- Map pointing to the school’s listing, JSON-LD for search engines.
Administration
- The school edits announcements, schedules and fees without touching code, from its admin area.
- Sign-in through the GotYeah SSO (Keycloak), the same as Notes.
- Safe publishing: the server validates input, renders the site into a staging folder, and only switches the served content if the render succeeds. A broken template never leaves the public site half-rendered.
- Editable content lives in a Docker volume, not in the repository: one single source of truth.
Hardening
- Strict CSP, fingerprinted assets, a guard against null bytes, serialized deployments.
Online at lerel.gautierchuinard.com, self-hosted.