Case study

This website: a small, fast site with nothing to hide

The first case study is the site you are reading. It is a real build with real trade-offs, documented here because we would rather show our working than borrow a client's.

The brief

A site that had to practise what it sells

The brief was uncomfortable: build a site that demonstrates the standards we sell, while selling them. That meant no template, no page builder, no marketing stack, and no performance claim we could not reproduce in front of a client.

It also had to carry a lot of content — service pages, location pages, pricing, guides and legal pages — without turning into a maze. Architecture was the hard part, not the visual design.

Decisions

Four decisions that shaped the build

One binary, no runtime

The site is a Go program with the templates and assets compiled in. There is no CMS to patch, no plugin surface and no database on the request path. Deployment is a file and a service restart.

Server-rendered HTML

Every page arrives complete. There is no client-side router, no hydration step and no JavaScript needed to read the content. Search engines and assistants see exactly what a visitor sees.

One stylesheet, almost no script

The design system is hand-written CSS. The only script is the small amount required for the mobile menu and form behaviour, served from the same origin.

No third-party requests

No fonts, analytics, chat widgets, tag managers, stock CDNs or embedded maps. Every byte comes from the same server, which also means the content security policy can be genuinely strict.

Trade-offs

What we gave up

A CMS. Editing copy means a deploy rather than a login, which is right for a site we maintain and wrong for a client who wants to publish daily. When a client needs editorial access we build one, and we scope it honestly.

Convenience features. There is no live chat, no popup and no cookie banner, because there are no cookies to consent to and no chat to staff. Some of that would convert better. It would also cost page weight, and we made the trade deliberately.

An off-the-shelf look. Bespoke layout takes longer than a theme. The upside is that the page structure follows the argument rather than the grid the theme happened to ship.

The build

What is actually in it

1 Go binary, scratch-based container
1 CSS file, no framework
0 Third-party request origins
0 Analytics or advertising cookies

Standards

What we tested

  • Keyboard and focusEvery link, button, form field and menu item reachable and visible in order.
  • Contrast and zoomBody text checked against the background; layouts usable at 200% zoom and 320px wide.
  • Reduced motionAnimations respect the prefers-reduced-motion setting.
  • SemanticsOne h1 per page, ordered headings, landmarks, labelled fields and descriptive link text.
  • Performance budgetNo render-blocking third parties, sized images with width and height, and a page weight budget checked on a throttled mobile profile.
  • Security headersA strict content security policy, HSTS at the proxy, frame denial and a referrer policy.

The honest caveat

The honest caveat

A studio's own site is the easiest project it will ever have. There is no legacy content, no committee and no awkward integration. Judge us on a client build, or ask to see the repository for this one.

Questions

The things people ask first

Why is this the first case study?

Because it is the only build we can show without borrowing someone else's credibility. Client work follows when clients agree to be named.

Is a Go binary right for every client?

No. It is right for content-led sites we host and maintain. A client who needs a CMS, a shop or a booking engine may be better served by a different stack, and we will say so.

Can I see the source?

Yes, on request, under NDA if you prefer. The interesting parts are the templates and the content model, not the server code.

Let’s find out whether technology is the answer

Tell us what you are trying to achieve. We will tell you honestly whether we can help, what it would take, and roughly what it would cost — before anyone signs anything.