this site

This site is built from my Obsidian vault. The vault lives in a private Git repo, and I use the Obsidian Git plugin to handle commits and pushes automatically. Anytime I add or change a note, it gets pushed to the repo, which kicks off the build process.

The Dockerfile installs Pandoc and runs a Lua script that filters which notes get published. Only the ones with public: true in their frontmatter make it through. That way I can keep private notes in the same vault without worrying about them going live.

The Lua filter also fixes Obsidian-style links. Syntax like [[Note Title]] or [[Note Title|Label]] gets turned into regular HTML links that work in the browser. The output is plain HTML with relative links, styled with a simple CSS file that i generated with ChatGPT.

Everything gets deployed through Coolify. It’s running on a free Oracle Cloud VPS. Coolify watches the Git repo and rebuilds the site every time I push. It uses the Dockerfile to generate the HTML and serves the finished site through its built-in NGINX setup.

The whole thing is simple and cheap. I write notes in Obsidian, tag them as public if I want them on the site, and push.