N.K.

← Projects

Projects · This site

Building this site

I built this site for two reasons. I wanted a place to publish the essays and research I was already writing, and I wanted a better way to show my work and who I am than a CV or a LinkedIn profile. Building and hosting it myself is part of that.

Design process

The current design wasn't the first idea. It came out of about twenty previews, each taking the same content in a different direction, and building them was how I worked out what I wanted the site to be. A few of them:

Stack

PHP, no framework

Hand-written PHP with a small set of shared utilities, so the whole request path stays easy to follow.

MariaDB

Posts and research codebases live in MariaDB as markdown source plus a rendered cache, addressed by slug and gated by a draft/published state.

nginx + Docker

nginx serves and routes with a strict security-header and CSP policy; Docker Compose ties the services together identically in dev and production.

A custom renderer

A markdown pipeline that also handles live chart embeds and LaTeX, so a research paper can be published as a proper web page instead of a PDF.

I didn't want a CMS. Reproducible charts, real math, and citable permalinks are hard to bolt onto a plugin stack, so I built the platform myself.

What I learned

Mostly that less is more. Most of the twenty previews failed because they added too much color and motion, and the one that shipped works because it stays out of the reader's way. Owning the stack has a real cost, since TLS, backups, and security headers are now my problem, but for a platform I can bend to the research it's worth it.

The platform underneath is documented in research infrastructure.