EventMap — trouver quoi faire ce soir à Paris
Une seule proposition, déjà filtrée, plutôt qu'un feed de 200 événements qui paralyse.
En production sur la VM Oracle depuis le 23/08/2026 : 9 511 créneaux en base, 100 % géolocalisés à Paris, rafraîchissement automatique toutes les 6h en ~29s. Service isolé (utilisateur dédié sans shell, quotas CPU/mémoire systemd, écoute limitée à 127.0.0.1, accès démo par tunnel SSH en attendant un sous-domaine public).
Jeune actif, semaine chargée : l'envie de sortir existe, mais la fatigue et la friction de recherche mènent à rester chez soi. Le vrai problème n'est pas un manque d'options — un feed de 200 événements un vendredi soir produit zéro sortie, c'est de la paralysie du choix. Ce qui fonctionne : une seule proposition, déjà filtrée (« Ce soir, à 2 km de Châtelet. Oui / Non. »).
Agrégateur d'événements limité à Paris intra-muros, alimenté par la source « Que faire à Paris » (Ville de Paris, licence ODbL, à peu près 2500 événements à venir, tous géolocalisés, mis à jour quotidiennement). Architecture : front Leaflet mobile-first (vue « ce soir » par défaut, jamais un simple catalogue) vers une API FastAPI (/api/events) vers une base SQLite. L'agrégation est asynchrone et tolérante aux pannes : si la source tombe, l'ancien contenu reste servi et /health passe en « degraded » plutôt que de planter.
Le périmètre initial visait un triangle Nanterre–Paris–Montreuil, mais un sondage mesuré a montré 0 événement à Nanterre et 14 à Montreuil dans la source retenue, et un audit de 13 sites de banlieue n'a produit aucun flux exploitable (pas de .ics, pas de JSON-LD Event). Décision : recentrage sur Paris intra-muros plutôt que du scraping coûteux et fragile — l'architecture multi-sources reste en place, prête à être réactivée si une source de banlieue fiable apparaît. Deux bugs SQLite trouvés en test (comparaison de dates sous forme de chaînes de caractères au lieu d'une comparaison temporelle réelle, entraînant l'exclusion silencieuse d'événements en production) ont été corrigés et documentés.