I recently (like over the past day) made this for my website, and potentially others’ as well. It’s a small script (at just under 60 lines of code) but it does do the job. I currently have this site set up to auto-update via a couple cron jobs, one to run the site generator and one to update the site generator. Both use git, so no bandwidth is wasted if no changes were made, Currently its not too feature complete, but I have some ideas to help flesh out the functionality a bit.
Using the first Header to set the title of the html documentImplimented
- Using the title to make cross-site navigation automatically
- Further integration with git for last modified timestamps, as well as..
- Social Media integration, posting the content of a tagged git commit to Mastodon, RSS, etc using a modular API that doesn’t need much work to set up (and none if you don’t use it)
These are just ideas at the moment, some easier to implement than others. The end goal is just to have a simple, but flexible site generator that is handy to automate and easy to deploy. At the moment this is proving to be true, as I can simply symlink the output directory to Nginx’s html directory, and it will be able to update without root privileges,
git commit; git push and done. It updates every 30 minutes, on the half-hour.