Recurring Tasks

The ability to set task recurrence without having to get into the formulas would be amazing for new users like me. I’d like to do all my task management within Coda, but being new makes it hard to find an easy formula that works to make it possible to have tasks repeat in one of the following ways after being marked as done: daily, weekly, monthly, quarterly, 6-month, or yearly.

I was looking into implementing a pack like this for a different reason, but I would be curious to know your use case. What exactly would it mean for a task to “repeat” weekly? Is it a matter of creating a new task row scheduled for the next week? Changing the due date of the current task to the next week? Having a field like “next recurrence”?

Personally, I like the idea of seeing the due date coming up and then the next recurrence. I also like the idea of have it make a new row (duplicate the current row and change it when it so any notes I take will copy over, or change depending on the date of the task). For example, maybe this week I have notes about what I did when I was answering emails that I want to record in that row, and then tomorrow, I have different notes that I need to be related to that task.

Take a look at this example doc: Tasks · Recurring Tasks which uses this pack for recurrences: Recurrence Rule Pack, extend Coda with Recurrence... | Coda

The pack supports fairly complex recurrences, but also supports the basic ones (with a nice option to automatically parse free form text like “Every month on the 2nd last Friday for 7 times” into a recurrence).

From the created recurrence rules it is easy to get the first occurrence, the next occurrence after a specific date, all occurrences, the occurrences between two dates (and more) with the First(), After(), All(), and Between() formulas.

There’s also a “Create next recurrence” column which is a button that creates a new row in the table that is a copy of thisRow with the Due date set to its Next recurrence date. The Next recurrence column of the new row automatically becomes the second next recurrence, and so on. The Mark as done column does the same, but also sets the Status to “Done”.

All that’s missing from that doc is maybe having the recurrences generated by an automation instead, which cannot be shared in published docs but shouldn’t be too tricky to implement. This would just run at some specified frequency, maybe daily, and check that for every completed task, it has its next recurrence created (there is a handy checkbox column Next recurrence created for each row). If not, it would press the Create next recurrence button for that row.

@loucadufault thanks for this - I’ll take a look! I’ve since gotten a bit better at formulas and found some helpful YouTube videos, but for anyone who builds packs, I think this could be a great feature.

1 Like