Generate a rotation that respects the days people actually cannot take, then check the thing that matters: whether the weekends and holidays are landing on the same person every time. Exports a real .ics file, so a schedule built with no backend still lands in everybody's calendar.
Add the days someone cannot be on call โ leave, travel, a wedding. The generator works around them rather than making you fix the output by hand.
Shifts are easy to split evenly. Weekends are what people actually notice.
Click a name to hand that shift to somebody else. Swaps stay put when you regenerate the rest.