Skip to main content
Colophon

What this site is built with.

A short, honest accounting of the stack behind the page you're reading — including what we chose not to use, on purpose.

FrameworkNext.js 14 (App Router)

Frontend and backend in one project — server components by default.

UIReact 18, hand-written CSS

A custom design system via CSS variables — no Tailwind, no CSS framework.

DatabaseMongoDB via Mongoose

A single document store, no separate cache layer.

HostingVercel

Serverless/edge, first-party Next.js support, one weekly cron job.

AuthCustom JWT + httpOnly cookies

No third-party auth provider.

TypefacesSora + Plus Jakarta Sans

Self-hosted at build time via next/font — no runtime request to a font CDN.

Deliberately not used

Each of these was a considered omission for a project at this size, not an oversight — fewer moving parts means fewer things that can quietly break.

TypeScriptA CSS framework (Tailwind/Bootstrap)A state-management library (Redux/Zustand)GraphQLMicroservicesA message queueRedis/MemcachedDocker/KubernetesA third-party auth providerA headless CMS

Compliance and craft, not just code

Cookie consent with real Global Privacy Control handling, a live status page, a published security.txt, an accessibility statement, and admin audit logging are all part of the same build — see Security & Trust for the full picture.