event-creator/specs.md
Alex 1f4bce1e95 Initial commit: event-creator userscript
Auto-generate ICS calendar events from selected text using chrono-node.
Bundles chrono-node inline (no external CDN dependency) and includes
@updateURL/@downloadURL for Violentmonkey auto-update.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-27 18:01:25 +02:00

40 lines
1.5 KiB
Markdown

# event-creator
Userscript Violentmonkey universel : sélectionner du texte sur n'importe quelle page pour créer un fichier ICS téléchargeable.
## Cas d'usage
Sites de calendrier grenoblois (La Bobine, Summum, MC2, Le Tamis, agenda.grenoble.fr…) où les infos d'événement sont éparpillées sur la page.
## Flow utilisateur
1. Sélectionner le texte contenant les infos de l'événement
2. Cliquer sur la bulle qui apparaît au-dessus de la sélection
3. Vérifier/corriger les champs dans le formulaire de confirmation
4. Cliquer "Télécharger .ics"
## Champs du formulaire
- Titre (extrait du texte)
- Date (input `type="date"`)
- Heure début / Heure fin (input `type="time"`)
- Lieu
- Description (texte sélectionné en entier)
- URL source (URL de la page, en lecture seule)
## Extraction heuristique
- **Titre** : première ligne sans date
- **Date** : regex sur formats français ("15 mars 2025", "samedi 20 juin", "15/03/2025")
- **Heures** : "20h30", "20h", "20:30", "à 20h"
- **Lieu** : ligne contenant un mot-clé de lieu (salle, théâtre, cinéma, café…) ou commençant par "à / au / chez"
- **Description** : texte sélectionné complet
## Règles de durée
- Heure de fin détectée → utilisée
- Heure de début seulement → fin = début + 1h
- Aucune heure → événement journée entière
## Sortie ICS
Champs : SUMMARY, DTSTART, DTEND, LOCATION, DESCRIPTION, URL
## Tech
- Un seul fichier `.user.js`
- JS pur, aucune dépendance externe
- `@match *://*/*`