jan's garden

Deploying the garden (2024-03-26) [note]

Every respectable tech blog must contain two posts:

Other content is optional.

This site strives to be both respectable and tech, so what needs to be done needs to be done.

Writing on the go

Content updates go like this:

  1. I write Markdown in a special directory in my Obsidian Vault
  2. The change is synced to my Digital Ocean server via Obsidian Sync (I run an Obsidian process on my server)
  3. A file system monitor script picks it up and runs a build script
  4. Built HTML files are served with Nginx

This process gives me full control over the content wherever I have access to Obsidian. Making writing as easy as possible is the principle behind this design.

This is considered a good idea in the frog community.

Making changes to the build process itself, or the HTML template, requires a computer, however.

Parentheses

Most of the heavy lifting is done by pandoc. The glue parts use an obscure and ancient language with many curved sigils. Give it a try.

A GitHub repository language breakdown showing that most of the code is written in Scheme.

Hosting

My small Digital Ocean server also moonlights as a container image registry. I build the scripts into an OCI image, push it on the server and run it with docker-compose. Don’t over-engineer when you want things done.