Skip to content

Add ICS calendar files for talks - #44

Merged
larsvilhuber merged 4 commits into
mainfrom
claude/charming-fermat-qvhpx4
Sep 28, 2026
Merged

larsvilhuber merged 4 commits into
mainfrom
claude/charming-fermat-qvhpx4

Conversation

@larsvilhuber

@larsvilhuber larsvilhuber commented Sep 28, 2026 •

Copy link
Copy Markdown
Member

Closes #43

Summary

  • New .github/scripts/generate_ics.py, run twice by the build workflow:
    • Before the Jekyll build (--add-metadata): adds ics: <talk file name>.ics to the front matter of every talk that lacks it (CI checkout only, nothing committed).
    • After the Jekyll build: writes _site/ics/<name>.ics for every dated talk (RFC 5545, line-folded/escaped). Events link back to the talk page (URL and DESCRIPTION) and include venue/location, joint speakers, mode and mainurl.
  • Optional front matter: ics (override the file name), end_date, start_time/end_time (quoted "HH:MM"), timezone (default America/New_York). Without a start time, the event is all-day.
  • _layouts/talk.html: shows an "Add to calendar (ICS)" link (relative to site.baseurl) when ics is set.

Notes

  • The referenced replicability-training script wasn't accessible from this session, so this is written from scratch (stdlib + PyYAML).
  • Existing talks have no time-of-day fields, so they default to all-day events.
  • main (including the preview base URL change from Build PR previews with site.url set to the preview URL #45) has been merged in.
  • Verified the script locally (104 talks); the Jekyll build and layout link are exercised only by CI.

🤖 Generated with Claude Code

https://claude.ai/code/session_01RBeXFA4VVU7vGuBVLRcPbZ

Talks with an `ics` front matter key get an ICS file generated at build
time (_site/ics/), linking back to the talk page, and an 'Add to calendar'
link in the talk layout. Enabled on the 2027-01-05 DC tutorial as an example.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RBeXFA4VVU7vGuBVLRcPbZ
@github-actions

github-actions Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

📖 Preview: https://pr-44.aeamain.pages.dev — commit 5517953

claude and others added 3 commits September 28, 2026 21:30
A Jekyll pre_render hook sets ics: <slug>.ics on every talk lacking one,
and the generator now writes a calendar file for every dated talk.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RBeXFA4VVU7vGuBVLRcPbZ
@larsvilhuber
larsvilhuber merged commit 64da3c6 into main Sep 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add ICS files.

2 participants