Colophon
How the site works
The content
I write content in markdown, which is converted to HTML by Jekyll. For the dynamic content, I simply write cgi scripts in some scripting language (generally bash or perl, depending on the size of the script).
The CSS itself is also hand-written, using LessCSS to make it less of a pain.
This site is currently pretty traditional/static, in the sense that it isn’t a super-shiny new-framework-of-the-month site. Files are static files, generated once on my computer, and transferred to the server using rsync.
All the source code for the site is managed using git (currently on commit 072ca57).
The server
The server runs Debian 12.
Currently, all traffic on the server is reverse-proxied by Caddy.
I host a few services under cafeduvesper.net, notably a Gitea instance; hence the need for a reverse proxy.
To serve the content for cafeduvesper itself (this blog/whatever, what you’re reading right now), I have a lighttpd server, which runs behind Caddy. This stems from my initial attempt at having CGI scripts. I was using nginx as a reverse proxy, and I tried to also make it handle CGI scripts, which it didn’t want to do because nginx is a work of satan and it’s sole purpose is to confuse us. I took the easy way out and spun up a lighttpd instance, which handled all the blog related stuff, CGI and static files. When I switched to Caddy, I tried to get rid of lighttpd, but I ran into annoying and probably stupid issues trying to make Caddy handle the CGI, and so lighttpd stays, for now, until I get motivated and try to get rid of it again.
Extra
Icons are from Lucide, font is Jetbrains Mono.