This Website

Some number of eons in the past, some ancestor to this site was beautifully hand-programmed in HTML/CSS.

Some time later, a previous version of this site (with basically identical CSS), was built to use the Jekyll static site generator. But this wasn't sustainable, and I'm not particularly a fan of Markdown (or similar) languages (two topics that may warrant blog posts).

Enter the DIY build, format, serve system. Three shell scripts that take a directory, and generate a static site.

Format (format.sh), takes a single HTML fragment as input and turns it into a complete HTML document (essentially adding the header and footer).

Build (build.sh), walks a directory and builds a static site in another directory (calling format.sh on the necessary files). It even detects if the file has changed, as to not needlessly write files.

Serve (serve.sh), watches a directory for changes and rebuilds the site on changes (calling build.sh), while simultaneously serving the built static site. This part makes developing the site bearable.

Links