No description
|
|
||
|---|---|---|
| event-creator.user.js | ||
| LICENSE | ||
| README.md | ||
| specs.md | ||
event-creator
A Violentmonkey userscript: select any text on any webpage, and turn it into a downloadable .ics calendar event.
Built for event listing sites (concert venues, theaters, local agendas) where the date, time, and location are just scattered in the page text — no need to type anything by hand.
Install
- Install Violentmonkey (Chrome, Firefox, Edge).
- Install the script from the raw file: event-creator.user.js — Violentmonkey will prompt to install it.
The script auto-updates itself from this repo (via @updateURL), so you don't need to reinstall it when it changes.
Usage
- Select text containing the event info (title, date, time, location…) anywhere on any page.
- Click the "Créer événement" bubble that appears above your selection.
- Check/fix the fields in the popup — title, date, time(s), recurrence, location, description.
- Click "Télécharger .ics" to download the file, then open it to add it to your calendar app.
What it parses
- Title: first line of the selection that isn't a date/UI text ("Détails", "Réserver"…)
- Date & time(s): French natural language ("15 mars 2026", "samedi 20 juin", "20h30", "20h30 - 22h30"), via chrono-node
- Multiple time ranges: e.g. a listing with several showtimes — each becomes its own event in the
.icsfile - Recurrence: "tous les mardis", "chaque semaine", "jusqu'au 20 juin" → weekly/daily/monthly/yearly
RRULE, with an end date - Location: a line with a venue keyword (salle, théâtre, cinéma, café…), a line starting with "à/au/chez", or a
Localisationlabel followed by venue + address - All-day events: when no time is found
- Everything is editable before download — the parsing is a best-effort starting point, not gospel
Notes
- Single self-contained file — chrono-node is bundled in directly (built with esbuild from the npm package), so there's no runtime dependency on an external CDN.
@match *://*/*— works on any site.
License
MIT — see LICENSE.