Colophon
• • 394 words • 2m to read
Domain
This domain gabbott.blog was bought on Namecheap alongside my other domains. The website was formerly on gabbott.dev and even longer before that on gabbott.xyz.
I also hold the domain gabbott.uk. Lots of variations of the same name.
Server
The server is a VPS hosted by Vultr, which I pay around $5 (something like £3~4) for each month. It is a small system with only 1 GB RAM, not much computation, etc. but it serves the purposes I need. The server runs Debian.
To provide the website I use Nginx with some fairly simple config that directs the page to the folder containing the static HTML files for the website.
Website
The website is built from a set of files in either a Yaz or Kmd format (detailled below) which are substituted into an HTML template. A few of the pages, for instance the main root page, are separately written in pure HTML.
I have a program written in Ruby which converts from these source files to the final HTML, and does the logic to create indexes for the blog and for each tag, etc.
I try to subscribe to Microformats2 as I can, though the website needs more work on this front I believe.
Kmd and Yaz formats
The Kmd (Kinda Markdown) format is a Markdown-like format I started using a few years ago when the website was built using a variety of shell scripts that called out to a program written in Zig. The format has a title line at the top, then a date line, then optionally a tags line and a subtitle line. Afterwards there are two blank lines and the content begins. The content uses two ampersands to mark a hyperlink, can represent raw HTML, mark italic or bold, etc. It did the job, but the problem is that it's not possible with this format to represent more specific metadata, like language, the date updated, a date the entry should not be released before, series, translations, as well as different entry types like recipes, IndieWeb likes and bookmarks, etc.
As such I made a new format called Yaz which can represent all this metadata at the top of the file, and this can be used in the Ruby script to perform more complex logic.
Styling
I use a CSS style that uses citruszest theming.