Expand description
§export-engine
ICS (RFC 5545) calendar export for shift schedules.
Generates standard .ics files importable into Thunderbird, GNOME Calendar,
Nextcloud, Apple Calendar, Google Calendar, Outlook.
§Design
One VEVENT per day — simple, correct, no RRULE complexity. A full year produces ~365 VEVENTs (~50KB), well within ICS limits.
The earlier RRULE approach was abandoned because shift types appear at
multiple irregular positions within a cycle (e.g. Morning appears 7 times
in 42 days), which can’t be expressed as a single FREQ=DAILY;INTERVAL=42.
Functions§
- generate_
shift_ ics - Generate an ICS calendar file covering a date range.
Type Aliases§
- Alarm
Config - Configuration for alarm times. Key: shift type name (“morning”, etc.), Value: (hour, minute).