bantz.net

Automating My Blog

github_cloudflare

I went through a lot of different workflows when trying to create this site and this blog. To be honest, I focused far too much on the tooling and not enough on just writing.

With that said, I’ve settled in on the most basic way of creating content I was already doing - with Markdown files. That’s it. If it’s not in markdown, I kind of don’t care about it. Being a huge fan of Obsidian already, taking pages and getting them onto the Internet was much easier than I really could have imagined when I started all of this.

Step One: What’s my platform?

Wordpress, Drupal, Astro, Ghost, Hugo, Jekyll… I tried them all. I spent so much time trying to get the platform to work right I skipped over just getting what I wanted to say out there. Being a huge fan of Obsidian for all my brain-dumps, it was an easy choice to use Markdown for web pages. Cool.

I also don’t really care about a reactive website - rendering on the fly, lots of JavaScript, whatever. I want this to be simple and fast. So, static files it is.

And it was my usage of AI - specifically my locally-run Hermes Agent - that helped me figure out the path to least resistance.

Step Two: What’s my hosting?

There’s no server behind this site. No VPS, no PHP, no database — just a git push and about sixty seconds of patience. Here’s how it works.

The chain

GitHub → Cloudflare Pages → jessmarie.me

That’s the whole pipeline. Every time I push to the main branch of my blog repo, Cloudflare picks it up and does the rest automatically.

Step by step

  1. Write. I edit markdown files locally — posts live in src/content/blog/, pages like the About page live in src/pages/. Each markdown file starts with some frontmatter (title, date, tags) and then the content.

  2. Build. Cloudflare Pages checks out the repo on their servers and runs a build — pnpm install && astro build. That command turns the whole thing (markdown, templates, CSS) into a directory of flat HTML files. No server-side rendering, no runtime. Just plain .html.

  3. Deploy. The built output gets pushed to Cloudflare’s edge network — hundreds of data centers around the world. When someone visits jessmarie.me, Cloudflare serves the files from the nearest location. It’s fast.

  4. Repeat. Write, push, done. The whole cycle takes about a minute.

Why this works for a personal blog

The not-so-secret sauce

The site is built with Astro using the Bear Blog-inspired theme by Harley Wilson. Astro compiles markdown into static HTML at build time, which is exactly what you want for a simple blog — no JavaScript runtime, no framework overhead on the client.

The whole thing is public on GitHub — which is also how Cloudflare knows when to rebuild.

That’s it

No deployment rituals, no ssh’ing into a box, no certs to renew. I write in Markdown, push, and the internet gets an updated copy in about a minute. I’ve spent more time overthinking tooling than I care to admit, and this is the simplest thing that’s just worked.

#automation#tech