Colophon
This site runs on Ghost — an open-source CMS I chose because it knows how to get out of the way. It holds the words and the plumbing; everything you actually see, the form and the silences between the lines, I built myself.
The look is deliberately spare: near-black and white, no warm tints, no decorative colour. White is the only accent I allowed. The whole thing reads like a printed page turned inside out — high contrast, a great deal of empty space, and type doing almost all of the work.
Two voices carry the typography. The large titles are set in a high-contrast display serif, with the deliberate, faintly luxurious weight of a printed masthead. Everything else — the reading, the labels, the navigation — is a clean, neutral grotesque. Code, and only code, keeps its monospace. The fonts are self-hosted: nothing is fetched from a third party, and nothing watches you arrive.
The front page is not a feed. It is a short, considered introduction — who I am, the four areas my work lives in (education, the independent web, infrastructure, and a personal archive), a handful of selected projects, the most recent writing, and a way to stay in touch. Education is the heart of it: making learning reach people who would otherwise be left out, and treating it as a right rather than a privilege.
The writing lives at /writing/ — a dense, numbered index, the way the contents of an old book or a careful ledger might look. Each piece is a single line: a date, a title, the reading time, and a fine rule stitching them together. The entries gather under the year they belong to, and the count never resets — the very first thing I published is number one, and every new piece simply takes the next number.
Inside a piece, the same bookish instinct continues. The text sits in a narrow, comfortable column. On a wide screen a quiet table of contents rides along the margin and lights up the section you are in; footnotes, when there are any, step out of the bottom of the page and into the margin, as sidenotes. Every heading keeps a small anchor, so any part can be pointed to on its own.
Beneath the surface, the site also speaks the language of the open web. It carries an invisible card with my name and my profiles, marks every post so that any open tool can read it, and listens for mentions from elsewhere — when someone replies from their own corner of the web, it appears here, quietly, under "from the web." You can answer by e-mail, or from your own site, which is the older and kinder way; the site even offers itself as a way to sign in to other independent-web tools.
There are more feeds than strictly necessary, and that is the point: RSS and Atom, in short and in full, a JSON feed, and twtxt and sfeed for the terminal-minded — all gathered on a single page, all styled to open kindly in a browser instead of as raw code. Subscribe once, in a reader you like, and the words come to you, with no algorithm in between.
And there are small kindnesses for the curious. A page that wandered off lands you somewhere gentle rather than a cold error. A press of "surprise me" sends you to a random corner of the archive. The whole thing prints cleanly, should you ever want a piece on paper. The analytics are privacy-friendly — no cookies, no profiles, no following you around. And if you open the source, there is a hello waiting for you there, because a person built this by hand and it felt right to say so.
Underneath everything, the theme is built with Gulp and PostCSS and checked with gscan so it stays honest with Ghost. A few small vanilla scripts do the living work — numbering the index, carrying the contents down the margin, gathering the mentions from the web, pulling a piece out of the hat — and nothing more than that. But the engineering matters less than the intention: I wanted a small, well-tended corner of the internet, without haste and without excess — a place that felt written, not assembled.
If you made it this far, thank you for noticing the details. They were placed here one by one.
— Pablo Murad