Makefile Site Generator
last updated 2020-11-22 21:10:34 by Simon Vandevelde
Introduction
I first created this web site two summers before the end of my studies. Back then, I manually created a website using just HTML and CSS, and put quite a lot of work in making it as terrible as possible. Despite knowing of the existence of site/page builders, I chose this way for two reasons:- I really disliked web development, and wanted to build a terrible site in protest.
- I wanted to experiment on what I could achieve using just HTML and CSS. This spawned pages such as my list of projects and my hobbies page.
Of course, this way of working has a very large downside: it is difficult to extend the website, because everything needs to be done manually. When I started experimenting with blog posts, I figured I would need a page builder of some kind. At first, I started to use Sphinx, a documentation generator used mainly for creating Python documentation, because I have a lot of experience using it (e.g. Pyidp3 and cDMN). However, because it is geared towards documentation, I still had to do a lot of manual work when creating blog posts. I used it for a while, but stayed on the lookout for a more simpler page builder, that would work without too much hassle.
Makefile-Blog
EnterMakefile-Blog
.
From its GitHub page:
Makefile-Blog is a static blog website generator written in makefile with various tools. The makefile blog creates index, post index and rss files from the blog posts you wrote.Makefile-Blog uses
make
to build every page on the website.
Blog posts are simply HTML files, which you save in the posts
directory.
The tool then turns it into a full blog post, based on a template which you can very easily create yourself.
The beauty of the system is that everything is super simple to do.
My first course of action was to create a custom template. Because my original website was already in basic HTML/CSS, all I had to do was copy and paste the code that I wanted to be part of the template! It could not be easier. After creating the template, I fiddled around with the index page for a bit. I wanted it to remain exactly the same as it was beforehand. Now when I want to build my website, all I need to do is execute the
make
command.
I would like to thank the project's author, ozy, for creating this tool. It has made my life infinitely easier.