Trognoncal

Moteur d'agenda culturel participatif

logo Pommes de lune

Le code source derrière pommesdelune.fr

https://pommesdelune.fr
Jean-Marie Favreau, Sébastien Forissier, Pierre-Yves Tardieu, Sirius Nottin — JdLL 2026
Accueil

Le pépin à l'origine du projet

Qu'est-ce qu'on fait ce soir ?

État des lieux

une flyer de PDL parmi les autres
événements sur fb
  • Sources multiples à consulter
  • Informations prisonnières des GAFAM
  • Certaines programmations sont peu diffusées
  • Certaines programmations mal structurées
  • Les agrégateurs existants sont thématiques ou partiels

Solutions existantes

  • Mobilizon
  • Gancio
  • Demosphère
  • Curieux.app
  • Hackeragenda
  • Gathio

Ce qui nous manquait

Accueil
  • Disposer d'une vue dense (scroller c'est chiant)
  • Se positionner comme une source secondaire (faire vivre un agrégateur)
  • Avoir des outils d'imports externes variés
  • Des pages accessibles
  • Pas surchargées en js
  • Sans publicité ni démarche commercial

Historique de l'agenda

  • Été 2023 : premières idées et discussions
  • Septembre 2023 : premières lignes de code
  • Juillet 2024 : mise en production
  • Septembre 2024 : annonce officielle
  • Octobre 2024 : premières modérateurices volontaires

La visite du pommier

À quoi ressemble Trognoncal ?

Accueil
Carte
Filtre
Importer
Importations récurrentes
Modération
Gestion des dupliqués
Vue smartphone journée Vue smartphone carte

Au cœur de la pomme

Quelles solutions techniques dans Trognoncal ?

Le code source

https://forge.chapril.org/Trognoncal/Trognoncal
Contributions
schema

Structure des données

La fabrique de la compote

Le cycle d'un événement : importation, gestion des duplications, modération

Toutes les nuits

Exécution des imports automatiques

Les extracteurs

  • Génériques : ical, Facebook, HelloAsso, Mobilizon, Echosciences, plugin wordpress MEC, APIDAE, Iguana, ...
  • Spécifiques à l'instance pommes de lune : la Comédie, la Coopé, la puce à l'oreille, ...

Plus de 20 importateurs développés et maintenus

Exemple d'un extracteur

                        
                        
                    

Importation d'un événement

Intégration d'un événement

Au petit matin

Modération

Modération d'un événement

Résolution de dupliqués

Les autres activités de modération

  • Ajouter des lieux et des alias pour les lieux existants
  • Ajouter des règles de catégorisation et d'étiquetage
  • Répondre aux messages
  • Ajouter manuellement des événements
  • Repérer les doublons non détectés
  • Ajouter de nouveaux imports
  • Vérifier la cause des imports échoués
Administration

Un bonus : chronostring

Un parser d'expressions temporelles en français basé sur un moteur de regex appliqué à des chaînes de jetons (tokens).

[1. Entrée brute] "le 5 juin 2025 de 18h à 20h"

[2. Tokenisation & Unification] p("le") Date("5 juin 2025") p("de") h("18h") a("à") h("20h")

[3. Consolidation locale] Regex: p?hah p Date H(TimeRange 18:00-20:00)

[4. Résultat Python réel] Regex globale [ (datetime(2025, 6, 5, 18, 0), datetime(2025, 6, 5, 20, 0)) ]

  • Analyse lexicale : découpage du texte brut en jetons élémentaires (mots de liaison, nombres, heures).
  • Représentation : chaque type de jeton est manipulé sous forme de caractère ou d'objet typé unique.
  • Règles de transformation : chaque passe de regex unifie les sous-blocs complexes (comme les plages H).
  • Génération directe : l'instantiation finale résout l'ensemble et produit directement des listes de paires de datetime, prêtes à l'emploi.

Les voisin·e·s du verger

Communication avec l'écosystème local

Échanges avec les lieux culturels

  • Accompagnement dans la mise en place de sources exploitables
  • Sollicitations pour des contributions volontaires
  • Demande de mise en avant de l'agenda
framagenda

Échanges avec le public

  • Coller des affiches
  • Tracter dans les files d'attentes des festivals
  • Faire des posts sur les réseaux sociaux
  • Échange avec des utilisateurices empêché·e·s pour travailler l'accessibilité
une affiche de PDL parmi les autres

Échanges avec les institutions

  • Incitation à la publication en OpenData (exemple de la ville de Clermont-Ferrand)
  • Intervention à l'occasion de l'Open Data Week 2025
  • Importance du lien avec les réseaux des médiathèques
open data Clermont

La pépinière

Plantez votre instance

pommesdelune.fr : depuis septembre 2024

statistiques
  • ~ 25 événements par jour
  • ~ 150 clics par jour depuis le moteur de recherche G.
  • ~ 1000 visites par jour
  • ~ 600 événements ajoutés spontanément en 2025 par les organisateurices

Méta-informations soigneusement choisies

Intentions définies par les catégories

  • S'ambiancer : fête
  • Assister : représentation
  • Échanger : conférence & débat
  • Expérimenter : atelier
  • Flâner : rendez-vous local
  • Visiter : art & patrimoines
  • S'aérer : sortie nature
etiquettes

En 2026 : deux nouvelles instances

imprimerienocturne agendabulle.fr

Rejoignez-nous, plantez votre instance !