Isn't that what calendars are for? Most of the time they are pre-installed on all OSes and they handle recurring schedules and notifications. On Linux I use Thunderbird for email with the Thunderbird Lightning Calendar [1]. I sync phone and desktop using CalDAV.
[1] https://www.thunderbird.net/en-US/calendar/