I don't like Static Site Generators, I learned it the hard way with this website. It is currently at its 8th version, I used a lot of SSGs (Jekyll, Hugo, Gatsby, Astro, 11ty) and I have been fucking around long enough to understand the experience with using such tools is just bad if you are anything like me. I want to be able to easily customize my personal website, you know, it's a personal website.
That's why I created yet-another-SSG,
rcastellotti/nossg
, it is less than 60 lines of python (basically glue around
Jinja2 templates).
This is really all you need for a static website. Keep it simple stupid, I know you love creating complexity because you feel smarter and more knowledgeable than us normies, but that's your own problem. You' ll realize it sooner or later.
Creating a post is simply a matter of adding a markdown file to /posts
(use static/<slug>/
to add pictures).
The post should contain (at least) the following metadata:
---
title: no SSG is the best SSG
slug: nossg
date: 19/08/2022
listed: True #controls whether post is listed in homepage
---
Features
- markdown support using Python-Markdown
- tailwindcss
- code syntax highlighting using Pygments, stylesheet adapted from richieleland/pygments-css
dev deployment
rc@mbp:~/nossg$ watchexec -r -e py,jinja2,md,css -- make
rc@mbp:~/nossg/build$ python3 -m http.server` #in `./build` directory
prod deployment
.gitlab/workflows/static.yml
deploys the website with Github Pages
P.S. Using github.dev it is possible to publish a post straight from the browser.