No description
  • HTML 72%
  • JavaScript 26.4%
  • Shell 1.3%
  • Dockerfile 0.3%
Find a file
Crosey f8fe5033a6 Jour J simplifié et galerie épurée
- Frise : suppression de l'étape « Soirée », le dîner devient « Dîner »
  avec une description volontairement générique
- Galerie : suppression de la note « Vos photos viendront ici »
- Calendrier (.ics, Google Agenda, JSON-LD) aligné : plus de mention de la
  soirée dansante, l'événement court toujours jusqu'à 2h

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 13:02:13 +02:00
admin Notifications à plusieurs adresses + rencontre en 2017 2026-07-31 12:11:45 +02:00
deploy Deuxième passe d'améliorations invisibles 2026-07-31 10:44:35 +02:00
public Jour J simplifié et galerie épurée 2026-07-31 13:02:13 +02:00
.dockerignore Déploiement : Docker + Caddy (HTTPS auto) pour clemelomariage.fr 2026-07-02 01:11:53 +02:00
.env.example Emails Brevo + templates soignés, ajout au calendrier, expéditeur par défaut 2026-07-02 01:09:03 +02:00
.gitignore Déploiement : Docker + Caddy (HTTPS auto) pour clemelomariage.fr 2026-07-02 01:11:53 +02:00
DEPLOY.md Déploiement derrière nginx système (pas de Caddy) 2026-07-02 01:22:16 +02:00
Dockerfile Déploiement : Docker + Caddy (HTTPS auto) pour clemelomariage.fr 2026-07-02 01:11:53 +02:00
package-lock.json Initial commit: site mariage avec RSVP et espace admin 2026-07-01 23:24:51 +02:00
package.json Initial commit: site mariage avec RSVP et espace admin 2026-07-01 23:24:51 +02:00
README.md Initial commit: site mariage avec RSVP et espace admin 2026-07-01 23:24:51 +02:00
server.js Jour J simplifié et galerie épurée 2026-07-31 13:02:13 +02:00

Mariage — Éloïse & Clément (29 mai 2027)

Site de mariage + collecte des réponses (RSVP) avec export CSV. 100 % self-hosted : Node/Express, stockage fichier append-only (aucune base de données à administrer), se sauvegarde comme le reste (rclone → kDrive).

Structure

mariage/
├─ server.js          API + sert le site et l'admin
├─ public/index.html  le site public
├─ admin/index.html   espace mariés (liste + export CSV)
├─ package.json       une seule dépendance : express
├─ .env.example       config à copier en .env
└─ data/rsvps.ndjson  créé au 1er RSVP (une ligne JSON par réponse)

Démarrer

cp .env.example .env      # puis choisis ADMIN_USER / ADMIN_PASSWORD
npm install
npm start

Espace mariés (/admin)

  • Tableau des réponses, recherche + filtre présents/absents.
  • Compteurs : réponses, présents, convives estimés, absents.
  • Bouton Exporter en CSVrsvp-mariage-AAAA-MM-JJ.csv (séparateur ; + BOM UTF-8, s'ouvre direct dans Excel FR).

Production (ton stack habituel)

PM2 :

pm2 start server.js --name mariage
pm2 save

Caddy (reverse proxy) :

mariage.exemple.fr {
    reverse_proxy localhost:3000
}

Le site ET l'API sont sur la même origine → rien à configurer côté CORS. (Si un jour tu sépares le front, renseigne ALLOWED_ORIGIN dans .env et API_BASE en haut de public/index.html.)

Sauvegarde

Tout tient dans data/rsvps.ndjson. Un rclone copy data/ kdrive:mariage/ périodique suffit.

Ce qu'il reste à personnaliser dans public/index.html

  • Photos de la galerie (section « Un peu de nous »).
  • Horaires du déroulé si besoin (bloc « Le jour J »).
  • Le lieu exact est déjà réglé (19 chemin de Fina, Fuveau) + carte des hébergements autour.