I got a little bored today so I added task progress indicators to this Obsidian roadmap thing I built for work.

Screenshot of coloured rectangles next to a link with the text 'View In Jira' and below the heading 'Jira Tickets'
What the task progress indicators look like.

When a task is created, but is not yet scheduled, it appears as an outlined rectangle. It turns into a grey rectangle when it’s added to the sprint. It then changes colour as the task progresses through the software lifecycle; turning purple while it’s being developed, blue while it’s being tested, and finally green when it’s ready for release.

They’re implemented as embedded SVG images, added directly to the note much like the span element used for status labels.

Screenshot of the markup of the embedded SVG image next to the 'View In Jira' link
Move the insertion point over the the SVG image to edit the markup.

It’s nice being able to add embellishments like this. Obsidian treating notes as regular files on the file-system is a huge advantage for these sorts of automations. No need to learn how to make a plugin; just write a shell script1 that’ll output Markdown, schedule it to run a couple of times a day, and you’re good to go.


  1. The “shell script” is actually written in Go, using the really useful script package to simplify all the pipelining stuff. ↩︎