I wanted to share a plugin I wrote called overdue which is available in the Community Plugins catalog.
I created this plugin to to aid my use of Obsidian as a task tracker. The plugin marks checkbox items as [[Overdue]] if you do not check them off by their due date.
For instance, say you have items like the following:
# In file 2020-01-01.md
- [x] Something I completed
- [ ] Something I didn't
# In another-file.md
- [x] Something else I completed [[2020-01-02]]
- [ ] Something else I forgot about [[2020-02-15]]
When the plugin runs any time after January 1st, 2020 local time, it will make the following changes:
# In file 2020-01-01.md
- [x] Something I completed
- [ ] Something I didn't [[Overdue]]
# In another-file.md
- [x] Something else I completed [[2020-01-02]]
- [ ] Something else I forgot about [[2020-02-15]] [[Overdue]]
The plugin runs automatically just after midnight to update your pages. You can also trigger the plugin using Overdue: Mark overdue items in the Obsidian command palette.
Opening a backlinks panel for the Overdue page shows all of your overdue items in one location.
The plugin only adds [[Overdue]] references, never removes them. When you complete an overdue item, check it off and delete the [[Overdue]] text to stop it from appearing in the overdue backlinks.
I was actively looking for a way to keep track of all the undone tasks in previous daily notes, when i stumpled upon this “overdue” plugin. And i like it!
The way i’ve set it up, all overdue tasks are listed in the new-tab page. I’ve set the automatically generated “overdue.md” note to open in new tabs (“default new tab page” plugin) and set the backlinks core plugin to show backlinks at the bottom of notes as default. Could probably be done with frontmatter too. The “better search views” plugin makes it extra nicely readable.
It doesn’t matter what overdue.md contains (only what links to it), so it also serves as a nice scratch pad for new tabs. In the top i have a reminder of the hotkey for refreshing overdue items, in case of recent new ones ([shift+alt+O], not sure if default?)
With some help from an LLM (“codeium” plugin for vscode, similar to github copilot) i extended the ruleset for which note titles are being scanned for undone tasks. My daily notes are created with the “periodic notes” plugin and have the title format YYYY-MM-DD-ddd, while the overdue plugin normally only indexes YYYY-MM-DD note titles. So with some additional regex, i managed to include any additions to note titles (i think…), after the date, eg. “2024-09-20-Fri.md” as well as “2024-09-20 tomato.md”. Tell me if you’re interested in the code, it’s just a few lines.