Elektrine lite

← Feed

@jeang3nie@social.linux.pizza

Post #1763886

2026-04-29 03:43 UTC

I've tried a bunch of other ssg's looking for one that fit how I want to work 'just right'. Most either have one or more of the same issues that I just griped about or else they have some other issue that bugs the hell or of me. The two that I came closest to wanting to use are Hugo and Pelican. But Hugo is more complicated overall than I want or need, and Pelican's workflow isn't to my taste. I'm also not a fan of trying to use anything written in Python long-term based on past experience. Some, not all, but some Python maintainers don't seem to have a concept of "stable", setting up a virtual environment still manages to break sometimes when libpython is upgraded, and really my overall view of python is that it is "pseudo-code that runs". Pelican also nukes the output directory to build your site fresh, and telling it to watch and rebuild doesn't work in my testing. I could live without that last one, but if they're is a feature and that feature is broken it doesn't give me warm and fuzzy feelings about using that software. Stepping back a bit, my Gemini capsule uses a generator that I wrote and maintain myself called Zond. Zond fits how I like to work pretty well. It knows the difference between a page and a blog post. It doesn't build anything that doesn't have a published date in the Metadata. If it isn't a .gmi file it simply copies it from the content directory to the output directory. You get a pretty basic tag system for categorizing pages and an atom feed. Anyway, I figured I might as well just roll my own again, so that's what I'm doing. [2/?]

Replies (1)

  • So my unfinished new ssg, called Riddermark, is well underway. It's going to be almost comically basic. Templates and css get compiled into the binary, because I'm writing this for myself and not worried about whether it's useful for anyone else's use case. Speaking of templates, there's no template engine. The templates are simply html with a few strings that get replaced by the rendered Markdown and Latex. There's also no built in development server. I'm using Busybox's built in http server for development. I figure I'll eventually cobble together a Makefile that starts up 'busybox httpd' and rebuild the site on change. Adding that functionality to the ssg is kind of non-Unix-ey anyway. What it does do really well already is render html and mathml from any combination of html, markdown, and LaTex equations that you throw at it. Code blocks get syntax highlighted. The built in theme has a simple nav bar at the top, centers the content and sets a max width, and has Gruvbox derived colors. Since that's most of what I wanted it to do I almost just cobbled something together using Pandoc, templates and Makefiles. But I also want it to generate an atom/rss feed. No word on when it'll be ready. I'm not really coding much this week since I'm off school and work, and when both of those start back up I'll be busy. But it has been kind of fun, and it's given me an excuse to write some Rust again, this time with a little more restraint and maturity. It gave me an excuse to try out some ideas that have been kicking around in my head for a while, at least in part. And it's fun exploring just how minimal I can make it and have it still be a useful tool.

    Open ##1763885