I’ve been tinkering with iCalendar, CalDAV and the like for a while. Here are some random notes on the topic:
Writing a CalDAV server that implements the full spec and is compliant with a broad range of (sometimes noncompliant) clients seems challenging, to say the least.
Most end-users interact with one of these proprietary calendar services: Outlook 365 (whatever they call Exchange Server these days), Google Calendar, Apple’s Calendar (iCloud).
Things get messy when sharing calendars- eg: within a team, family, or between a couple.
The mechanisms for sending/receiving/updating event invites is messy and uses email as the transport mechanism, relying on email clients to handle the invite/decline/update/etc messages. That’s messy.
TeamSnap, popular software for sports teams to coordinate practice and game schedules, publishes iCalendar compliant feeds for teams and allows players (and coaches) to RSVP to events, but they rolled their own “availability” solution instead of implementing it with core iCalendar ATTENDEE functionality. That’s fun.
Some calendar services do some seriously stupid things with their event UID’s.
Because iCalendar data is plain text (XML’esque), LLM’s are quite capable at processing it. There’s a lot of neat stuff that can be done there.