Obsidian/Astro workflow
/ 5 min read
One missing piece of my recent revitalized blogging effort is managing source material and drafts. For a while now I just shared stuff into Apple Notes, but it gets kind of lost there and I never look at it again. In a recent chat with my sparring partner (let’s call him Claude) they suggested a tool called Obsidian.md. Now this was a nice surprise: It’s a markdown based knowledge management system that syncs across devices. And it uses frontmatter to manage markdown metadata. Wait a minute, this very blog uses static site generator AstroJS which uses … markdown files with frontmatter! Obsidian uses “vaults” as a collection of markdown files, which in the end is just a folder on your laptop - which could just be the very folder with blog articles in the AstroJS project!
The first nice emergence effect of using the two tools together: Obsidian picked up the tags metadata I’ve been maintaining in AstroJS for each blog post. Obsidian is great for managing and even visualizing these tags, so I’ve been able to clean them up a bit (alternative spellings, synonyms etc. - reminder: but then don’t forget to maintain your .htaccess
to add redirects!). This is how the knowledge map of blog/tag relations currently looks:

Another nice thing I’ve noticed: Obsidian auto-saves while you type. And since AstroJS via pnpm dev
has hot reloading, you get an updated preview of your blog post while you type! Here’s a GIF showing that (so meta!):

This is already a nice workflow improvement! Now how do I get stuff I come across or notes I take on mobile into Obsidian? Obsidian has iOS/Android apps, but there’s been some debate about it’s lack of nice sharing integration. The missing piece I use for now is an iOS shortcut that auto-append links, notes and other things to a markdown file in the Obsidian vault that gets auto-generated for each day (like 2025-03-02.md
). With sync enabled for the Obsidian vault, these notes end up on my laptop in the draft folder of the AstroJS project for this blog. Here’s all the building blocks:

This looks like a lot of building blocks, but the workflow ends up being a quite ubiquitous, at least for my current device setup and working habits. The aim is to keep the building blocks simple, even if they are a lot. Since the blog is just powered by markdown (as opposed to a full blown database), building blocks can be replaced (somewhat) easily. For example, last year I was able to migrate from ElderJS to AstroJS in just a few hours.
I’m of course not the first one to come up with this idea of using Obsidian for blogging:
- Obsidian itself offers their Obsidian Publish service.
- Recently came across this blog post by Piotr Migdał which really resonated with me, and I love its title: If it is worth keeping, save it in Markdown.
I’m just starting with this and I might miss some caveats, but so far it worked well, actually, writing this blog post made use of the new workflow. I researched some stuff on mobile, got some links into my daily draft *.md
files, and then wrote this blog post in Obsidian, yay, so meta!