Adventures of the Retired Guy

Adventures of the Retired Guy

Stuff and nonsense from a retired guy

04 Feb 2024

Choosing a CMS (and maybe a new framework)

On this page

VS Code and Frontmatter extension work, but are too technical for daily use. This post documents my (eternal) search for something better.

VS Code is a truly wonderful IDE. It generally has somebody else's well-thought-out extensions for all the kinds of development I've dabbled in so far.

Front Matter is an interesting experiment about writing a Code-hosted CMS supporting a static site generator. But I'm finding it difficult to dial into routine use. And it doesn't handle my desire to blog or just journal on the go (e.g. away from my development workstation).

But I don't want to through the baby out with the bathwater, here's criteria for a "better" CMS:

  1. Supports SSGs, Could stay with Zola, could go back to Hugo.
  2. Supports git as the repo, and is supported by Cloudflare for deployment.
  3. Lightweight blog/journal experience (mobile?)
  4. More structured image gallery. We're going to dive into collecting and documenting family pictures, Jessie should be able to contribute from her end.

Steps along the way

2024-02-03 Read this article about git-based CMS, got me thinking there must be a better way.

Took a long look at Static CMS.
Pro: web based SPA, can be integrated into my existing site at /admin, but uses Github (or other backend) API to manage content.
Con: web based preview doesn't do a lot of markdown. No GFM checkboxes or definition lists, code blocks didn't pick up language highlighting. Would be good for Jessie, bad for me.

Also looked at Tina and others -- but basically the same story.

Looked at Jekyll as the granddaddy of SSMs. It is native for Github pages. So Probably the path of least resistance for GFM markdown. Has plugins architecture, but the list of plugins is bewildering.

Fake a definition list:

  • this is the term
    this is the definition on multiple lines if needed

Here's a real one:

this is the term
this is the definition and it is on multiple lines if needed