Repeating events on a calendar for local clubs
Your task
Your app gives 2,000 local clubs a shared calendar: chess clubs, choirs, running groups. Most events repeat, such as every Tuesday at 19:00, every other Saturday, or the second Monday of each month. Many repeat with no end date. Members open the app to see the next 3 months of events for the clubs they belong to.
Organizers often cancel or move one meeting, like a Tuesday that falls on a holiday. About 30,000 members open the calendar each day. A member belongs to 3 clubs on average.
How do you store a repeating event and a change to one meeting? How do you build a member's 3-month view?
It covers
- Recurrence rules
- Exceptions
- Time zones