/colophon1
this page details the more technical aspects of how this website is built
the presentation layer is discussed in theme, and the structure in /ia
tech stack
No LAMP here. It is not 2003.
The stack here is LBKVGO:
- os
- Linux web server
- Bespoke (writtten in Go) database
- key-value persistent store (written in Go) services programming language
- Golang
It is literally one binary that is deployed into a server. And that binary is primarily a daemon that provides the services, but is also a CLI to administer the daemon. Neat, eh? Some might even say sublime: atomic deployment; no version mismatch between the admin CLI and the server logic daemon because they are conjoined; no external runtime; no shared libraries to exploit; performant; something a Real Programmer and BOFH would do.
services
the tech stack provides a trilogy of services (not just www)
- IdP
- it acts as an identity provider; this is nerdy technology: IndieAuth
- www
- it acts as a web site, serving up html pages of wisdom (like this very page you are reading now).
-
pages are store in a variety of formats (e.g. html, md, mf2+json, txt) and converted2 as needed.
- social
- it acts as an ActivityPub server for participation in that nebulous thing called the fediverse
$LastModified: 2026-04-22 21:49:29Z (Wed, 22 Apr 2026) $
-
↩︎From the greek meaning _designer talks bollocks that only other designers care about_. -
Using HTTP’s content-negotiation facility. It tantek or any of his IndieWebOrg acolytes read this, they are probably having an absolute cow now because they are so against it. Seriously, just get over it. Conneg has been in the HTTP spec since day 1 (ask TimBL), and sure, in the early days people have fluffed the implementation, but if after 20 years you still can’t program conneg then you don’t have the right to call yourself a programmer. ↩︎