Skip to content

Setting up my blogging environment

Published: at 12:00 AM

In this post I will show my simple Obsidian setup that allows me to write posts for my blog in a very simple, and automated way.

how my blog works?

I am using AstroPaper as my blog template, this Astro theme allows me to have a minimal setup that generates pages based on a /src/content/blog directory, inside that I can write markdown files.

the structure of a blog post file

Every post has to start with markdown front-matter in the following style

---
title: Title
author: Paul Tal
pubDatetime: { { date } }
slug: { { title } }
featured: false
draft: true
tags:
  - first
  - tag
  - second
  - tag
description: This is the post description
---

content of the post goes here

where does Obsidian shine?

Obsidian, if you think about it is a fancy Markdown editor meaning that I could potentially use it to open my blog repository and edit files directly there.

step 1: basic file editing

By just opening my blog’s repository as-is in Obisidian I can already create and edit Markdown files that represent my blog posts.

step 2: front-matter template

Obsidian offers a way to automate the front-matter. I have created a templates/ folder at the root of my repo and I’ve put there a new Obsidian template representing the front-matter every post needs. Then, by going into settings i can choose that folder to by my Obsidian Templates Folder and then using the command palette I can import that into any blog post.

step 3: automatic attachments

By using the Custom Attachment Location community plugin from Obsidian I was able to set it up so when I paste an image into my notes, it automatically places it into the /public/[noteTitle]/ folder.

But by default, when pasting an attachment, Obsidian only places a simple link like this [](filename) in Markdown, but for images to work with AstroPaper, the links to images should look more like [](/public/[noteTitle]/{filename}.

25.06.2025 - image pasting seems to be broken right now

01.07.2025 - I’ve fixed image pasting (see end of post for update)

step 4: sync and deploy

By using the Git Obsidian plugin, I can simply run a command present in the command palette and this will automatically commit my changes to GitHub. After that, Vercel will automatically deploy my update.

Note: I have disabled automatic Git commits because I want to be able to choose when a new update is deployed

conclusion and ideas for the future

This blog post was written while in the process of setting this environment and I must say, it feels great to be able to write blog posts in this way.

In the future I would love to have Excalidraw integrated in this workflow, but I have go figure out how my site would render that. Some ideas I have are:

…we’ll see!

update (July 1st 2025) - getting image pasting to work in Obsidian

After reading the Astro Images docs I found out that I needed to provide a relative path inside the markdown in order for Astro to correctly understand and build the image.

So, the location of new attachments is inside the src/assets folder (yes, I throw every single attachment in there, I have a plugin that does some cleanup for orphaned images tho). And then I import/use them in my Markdown notes using a relative path to that assets folder.

Here’s my current config for the Custom Attachment Location obsidian plugin: getting images to work

Note: Probably using some more complex setting for this plugin in the future I might change it to organize the assets into subfolders, but for now, it just works.