Open any page on this site with your browser’s network panel and you’ll see requests to one host: ours. No font service, no CDN, no analytics tag, no chat widget loading in the background.
What we self-host
- Fonts: Unbounded, Schibsted Grotesk and Instrument Sans as WOFF2 files, under their open font licenses.
- Motion: our own small animation engine for scroll effects (open source, about 600 lines), and Lenis for smooth scrolling.
- 3D: three.js for the particle field behind each page.
- Every library file has its version in its name and a license note next to it.
Why bother
- Privacy: visitors’ IP addresses and browsing aren’t shared with anyone else just by opening a page.
- Speed: no extra DNS lookups or TLS handshakes to other hosts before the page can render.
- Reliability: another company’s outage can’t break our pages.
- Security: no third-party script can change under us.
How we check it
An automated browser sweep opens every page of the site on a desktop and a phone-sized screen. It fails if any page requests another host, if a link is broken, or if the accessibility checker finds a problem. It runs before every release, alongside the rest of the test suite.
What it costs
You update libraries yourself instead of getting them silently, which we consider a feature. And there’s no free analytics dashboard: if we want numbers, we read our own server logs. For a company that asks clients to trust it with their data, that felt like the right default.
The daily feed, too
Our Blog and News pages now carry a short daily selection of headlines from other publishers. Our server reads their public feeds and stores the headline, a short excerpt and the link. Your browser never contacts those sites until you choose to open an article.