vtrlx.ca (Victoria Lacroix)

All posts

I Rewrote This Site

2026-06-03

I rewrote this site's source code from Markdown to Gemtext.

Aside from my distaste for Markdown, the main reason I made this change is because Hugo—the static site generator previously used for this site—has begun to accept chatbot-emitted code patches. I can forgive a static site generator being way too complex for me to even begin figuring it out, but I draw the line at vibecoding.

As a result of the new source format, links are now all on their own lines and text emphases (bold, italics) are gone. Many other little tricks of formatting are also either absent or substantially different due to the limitations of Gemtext. These limitations are a happy and welcome change as I can focus more on what I write rather than making it nice. Lacking in ways to emphasize text, I am forced to rely instead on vocabulary to make my point. As tone of voice is impossible to convey through text, trying to find substitutes instead of alternatives is always doomed to failure. However, in rewriting this site's content to suit the limitations of Gemtext, I've also found some neat ways to "fake" certain things. For instance, the warning emoji (⚠️) is an excellent way to convey attention-grabbing content I would previously have set into an "aside" box. The post index page now also uses emoji to denote posts.

I've also taken the opportunity to rearrange some sections of the site for simplicity. This means some links have been broken, but I've taken care to maintain the old blog at the same location as before as some of its posts have had a wide reach and I would like to be mindful of linkrot. Those of you who were subscribed to the old RSS feed should have been notified of one last post in the old section, which links to this one. Linked below is the site's new RSS feed. If your feed reader can automatically detect feeds from webpages, it should be possible to add the site's new feed by typing "vtrlx.ca" as the URL.

RSS feed

Lastly in terms of visual changes, I've also given the site a fresh new coat of paint including a new dark mode theme. I have a long, vocal history of not caring for dark themes—and I still don't—but given that CSS supports the feature I really had no excuse not to include it, even if I don't buy the argument that it's "accessible".

Now that the site is written using Gemtext, it should also be relatively straightforward for me to launch it as a Gemini capsule as well. I'll do so whenever I care to.

The actual software rendering this site is a static site generator I wrote myself—in Lua, of course—with plenty of inspiration from Pixelo789's own similar generator, going as far as using Pixelo789's geez library to parse Gemtext source and render it to HTML.

Pixelo789's site

geez manual

My site generator is only ~150 lines of Lua code, with two dependencies (the aforementioned geez, as well as LuaFileSystem for file traversal). Also taking cues from Pixelo, it has been made so that any images linked in my pages will instead get converted to proper images in HTML. As with that example, I've found there are a surprising number of advantages to rolling your own site generator, all without inheriting complexity from existing generators. Said complexity is of the reasons I had found Hugo so frustrating, and why I am so glad to be rid of it.

Anyway. Don't expect anything about what I write in the future to change—I'm the same me after all. This is simply an adjusted delivery mechanism, one with less overhead (for everyone)

Reply to this post