Does this Mac daily event-notification app exist?
December 8, 2022 1:13 PM Subscribe
I'm looking for a mac desktop app (not a mobile app, though it can be both) that will notify me of tasks I need to do at specific times of the day. I know this is a function of all calendar apps, and, I assume, some to-do apps, but my needs are a little specific.
I seem to frequently get into periods where I have to do the same things every day at set times. These periods come to an end, but they might last weeks or months.
Right now, I'm training my two dogs, and I have to do various things with them at various times of the day. At other periods, I might decide that I want to work out three times a day during breaks at work. Etc.
The ideal app for me would be one in which I could set up scheduling templates. A template would be all the things currently in my daily schedule. And I'd like each day to automatically follow that template until I switch to another template.
"For the next two weeks, I'm on my meditate ... dog training ... exercise schedule. Okay, that's over. Now I'm on my practice-foreign-language ... go swimming ... practice-foreign-language schedule ... And now, I want to go back to my meditate ... dog training ... exercise schedule."
That "go back" ability is key. I want to be able to return to previous daily schedules without having to remake the from scratch. Which is why templates are so important to me.
I should be able to set up different schedules for weekends than weekdays, and I'd like to be able to make exceptions to templated events on arbitrary days. "Yes, meditation is always at 7am, but today it's going to be at 10..."
Note: I found this question from 2007, but I was hoping something better had come along since then.
I seem to frequently get into periods where I have to do the same things every day at set times. These periods come to an end, but they might last weeks or months.
Right now, I'm training my two dogs, and I have to do various things with them at various times of the day. At other periods, I might decide that I want to work out three times a day during breaks at work. Etc.
The ideal app for me would be one in which I could set up scheduling templates. A template would be all the things currently in my daily schedule. And I'd like each day to automatically follow that template until I switch to another template.
"For the next two weeks, I'm on my meditate ... dog training ... exercise schedule. Okay, that's over. Now I'm on my practice-foreign-language ... go swimming ... practice-foreign-language schedule ... And now, I want to go back to my meditate ... dog training ... exercise schedule."
That "go back" ability is key. I want to be able to return to previous daily schedules without having to remake the from scratch. Which is why templates are so important to me.
I should be able to set up different schedules for weekends than weekdays, and I'd like to be able to make exceptions to templated events on arbitrary days. "Yes, meditation is always at 7am, but today it's going to be at 10..."
Note: I found this question from 2007, but I was hoping something better had come along since then.
This is not quite the solution you’ve asked for but it is on desktop and can achieve what you want.
I basically do this with my weekly planning excel sheet and my regular calendar app. In the excel sheet I have a few tabs that are templates with all the recurring activities for that week.
As today is Friday, I’ll grab the tab template I want and replicate it for next week and fill out the details further. Then I go to a previous week’s tab that is based on that template, note which week it was, go to that week in my calendar app, and copy all the events of my recurring task color into this upcoming week.
As I go through my week, my calendar reminds me what to do and my excel sheet tracks my progress.
I replicate the excel sheet every quarter (each year contains 4 sheets) because weekly tabs + templates get to be a bit unwieldy to work with after three months.
It’s very basic and simple, but also flexible and works well for me.
posted by iamkimiam at 12:10 AM on December 9, 2022
I basically do this with my weekly planning excel sheet and my regular calendar app. In the excel sheet I have a few tabs that are templates with all the recurring activities for that week.
As today is Friday, I’ll grab the tab template I want and replicate it for next week and fill out the details further. Then I go to a previous week’s tab that is based on that template, note which week it was, go to that week in my calendar app, and copy all the events of my recurring task color into this upcoming week.
As I go through my week, my calendar reminds me what to do and my excel sheet tracks my progress.
I replicate the excel sheet every quarter (each year contains 4 sheets) because weekly tabs + templates get to be a bit unwieldy to work with after three months.
It’s very basic and simple, but also flexible and works well for me.
posted by iamkimiam at 12:10 AM on December 9, 2022
Response by poster: I'm intrigued iamkimiam, but I'm not sure I get it. If you have 25 everts today in your excel sheet, do you have to manually create 25 calendar entries, one by one?
posted by grumblebee at 10:32 AM on December 9, 2022
posted by grumblebee at 10:32 AM on December 9, 2022
Best answer: I think you can do this with OmniFocus's Single Action lists, as long as you're OK with not having the tasks in your calendar, but receiving notifications (and seeing them in OmniFocus).
For each routine, create a project of type Single Action and give it a name such as "Routine 1 Template." Populate it with each daily item you'd like to get a reminder of. Set them all to be due today at the time you want, make each a repeating action 1 day from the assigned day, and set whatever notification you want for each (the default is a notification at the due time).
Set the status of your Single Action lists to "On Hold," so that tasks aren't available. For the sake of organization, you could put them all in a folder called "Templates" (or whatever).
When you want to use one of these templates, duplicate the entire list (Edit > Duplicate), then rename the duplicate (e.g., "Current Routine"), set its status to "Available" (and drag it out of the Templates folder, if you're using one) and then select all of the items and use one of the OmniFocus user-created Defer scripts to "defer" the due date to whatever day you want to start the routine.
When you're ready to change routines, you can either delete the old list or, if you want a record of having done your tasks, rename it (e.g., "Routine May-July 2022") and set its availability to "Completed".
You'd need to use OmniFocus's Forecast perspective to see the day's routine (OmniFocus won't write tasks to your calendar), but you'd get notifications.
The only thing it wouldn't do that's on your list is the occasional exception to the routine. For that, I would create a non-repeating task. To use your example, you have a task "Meditate" with a due time of 7 am, but today you want to meditate at 10. When you get the 7am alert, check off the task (so it will repeat tomorrow) and then create a new task ("Meditate today") with a 10 am due time. Since it's a non repeating task, checking it off won't create a new version for tomorrow.
OTOH, if you decide at 6 am to meditate, checking off the "Meditate" task due at 7 will create a new one tomorrow.
The Omni Group have a 14 day free trial of OmniFocus, so you can give it a whirl. It's not a simple app, but it has a lot of power.
I've been using OmniFocus since it was a beta in 2007, and I'm a happy customer, but I have no other connection to the company.
posted by brianogilvie at 9:19 AM on December 10, 2022
For each routine, create a project of type Single Action and give it a name such as "Routine 1 Template." Populate it with each daily item you'd like to get a reminder of. Set them all to be due today at the time you want, make each a repeating action 1 day from the assigned day, and set whatever notification you want for each (the default is a notification at the due time).
Set the status of your Single Action lists to "On Hold," so that tasks aren't available. For the sake of organization, you could put them all in a folder called "Templates" (or whatever).
When you want to use one of these templates, duplicate the entire list (Edit > Duplicate), then rename the duplicate (e.g., "Current Routine"), set its status to "Available" (and drag it out of the Templates folder, if you're using one) and then select all of the items and use one of the OmniFocus user-created Defer scripts to "defer" the due date to whatever day you want to start the routine.
When you're ready to change routines, you can either delete the old list or, if you want a record of having done your tasks, rename it (e.g., "Routine May-July 2022") and set its availability to "Completed".
You'd need to use OmniFocus's Forecast perspective to see the day's routine (OmniFocus won't write tasks to your calendar), but you'd get notifications.
The only thing it wouldn't do that's on your list is the occasional exception to the routine. For that, I would create a non-repeating task. To use your example, you have a task "Meditate" with a due time of 7 am, but today you want to meditate at 10. When you get the 7am alert, check off the task (so it will repeat tomorrow) and then create a new task ("Meditate today") with a 10 am due time. Since it's a non repeating task, checking it off won't create a new version for tomorrow.
OTOH, if you decide at 6 am to meditate, checking off the "Meditate" task due at 7 will create a new one tomorrow.
The Omni Group have a 14 day free trial of OmniFocus, so you can give it a whirl. It's not a simple app, but it has a lot of power.
I've been using OmniFocus since it was a beta in 2007, and I'm a happy customer, but I have no other connection to the company.
posted by brianogilvie at 9:19 AM on December 10, 2022
Best answer: OK, after a bit of thought, I came up with another way to do this, using a calendar app, as long as you don't need a record of having done things (i.e. you don't want to track consistency):
For each routine, create a new calendar in your calendar app (I use Fantastical, but I think this would work in the bog standard Calendar app). Put your routine with activities and time on it, and any alerts you want. Make each event repeat daily.
Then hide all those calendars except the one you want to follow. You'd have to do this on each of your devices, I think, and change settings on each device when you change routines, but I think it would do what you want to do with less muss and fuss than the OmniFocus method.
The only drawback I see is that you wouldn't strictly speaking have templates here; you'd just be activating and deactivating calendars, so any changes would be the basis for the future recurrences of that routine. But if you wanted true templates, you could never activate any of the routine calendars; instead, you could export it as an ics file, then import it under a new name and activate that one.
posted by brianogilvie at 9:32 AM on December 10, 2022
For each routine, create a new calendar in your calendar app (I use Fantastical, but I think this would work in the bog standard Calendar app). Put your routine with activities and time on it, and any alerts you want. Make each event repeat daily.
Then hide all those calendars except the one you want to follow. You'd have to do this on each of your devices, I think, and change settings on each device when you change routines, but I think it would do what you want to do with less muss and fuss than the OmniFocus method.
The only drawback I see is that you wouldn't strictly speaking have templates here; you'd just be activating and deactivating calendars, so any changes would be the basis for the future recurrences of that routine. But if you wanted true templates, you could never activate any of the routine calendars; instead, you could export it as an ics file, then import it under a new name and activate that one.
posted by brianogilvie at 9:32 AM on December 10, 2022
P.S. Obviously if you use the calendar approach, you'd have a separate calendar (or more) for your non-routine activities, and show that too. So a minimalist version would have two calendars active at any time:
Default calendar (where new entries are saved)
Routine calendar
posted by brianogilvie at 9:37 AM on December 10, 2022
Default calendar (where new entries are saved)
Routine calendar
posted by brianogilvie at 9:37 AM on December 10, 2022
Best answer: I learned to edit the text inside a .ics calendar invitation file.
It was a bunch of trial and error, but now I pop open my folder of holiday events each year when work drops the next annual calendar, and I can just edit and re-save them with the next year's dates.
The.ics standard includes repeats and stuff, so you could just keep a folder for exercise/language and another folder for yoga/bread-making, and edit as needed.
A little clunky, but it actually works without buying a whole new app!
posted by wenestvedt at 7:59 PM on December 10, 2022
It was a bunch of trial and error, but now I pop open my folder of holiday events each year when work drops the next annual calendar, and I can just edit and re-save them with the next year's dates.
The.ics standard includes repeats and stuff, so you could just keep a folder for exercise/language and another folder for yoga/bread-making, and edit as needed.
A little clunky, but it actually works without buying a whole new app!
posted by wenestvedt at 7:59 PM on December 10, 2022
This thread is closed to new comments.
posted by mark7570 at 5:03 PM on December 8, 2022