Skip to content

Home

About this site

How this site was built

I designed it and set the constraints. Claude Code wrote the code. A working preview was live within 48 hours.

The split

The hard part of a site like this is deciding what it is for, not typing it out. I worked out the brief with Claude in a separate chat and made every call in it: who reads it, what each section has to prove, the palette, and the rule that the one green is only ever a fill behind black text. Claude Code turned that into pages, components and build scripts. When it wanted to do something the brief ruled out, the brief won.

The budgets it had to meet

I gave it three numbers before it wrote a line: under 100 KB of JavaScript, a largest paint under 1.5 seconds on a simulated 4G phone, and WCAG 2.1 AA. Then I asked it to enforce them rather than aim for them. The build fails if the JavaScript goes over budget, or if a page ships something the security policy would block.

Budgets and results
BudgetTargetWhat it hit
JavaScriptUnder 100 KB12 to 17 KB
Largest paintUnder 1.5 s1.66 to 1.81 s. Misses on all 14 pages.
AccessibilityWCAG 2.1 AANo violations found
Lighthouse performance, mobile95 or more96 to 99

Live numbers from harithg.com, 21 September 2026: Lighthouse in mobile mode, the median of three runs per page, run from Sri Lanka. Accessibility, best practices and SEO scored 100 on every page, and the accessibility row also rests on axe checks of the live pages.

The JavaScript figure includes about 10 KB of Cloudflare's analytics script. The paint budget is missed: 1.2 to 1.45 seconds on my test server, 1.66 to 1.81 live. From here, time to first byte alone is about 370 milliseconds, and the analytics script adds up to about a fifth of a second.

How it checked its own work

It did not just report that things worked. It ran the pages in a real browser at phone width, measured them, and looked at screenshots. That caught things I would have missed: a diagram whose labels shrank to under 9 pixels on a phone, and an empty index page that was about to land in the sitemap. Both were fixed before anyone saw them.


Book a call (opens in a new tab)