All services

Services / Web

Fast now.
Fast in a year.

Websites and web apps built on foundations that don’t rot. We pick the framework to fit the problem — Astro when it’s content, Next.js when it’s an application — then keep the JavaScript budget honest.

Start a project

Where we win

Most sites are fast
on launch day.

Then a tag manager arrives, a chat widget arrives, someone drops in a four-megabyte hero image, and the build that scored 98 in a demo is a three-second load on a mid-range phone. We write a performance budget into the scope and measure it on real visitors, so the site is still quick a year later after three teams have touched it.

What we build

Six things
we do here.

01

Marketing sites

Astro-built, content-led sites that ship almost no JavaScript. Editors get a CMS; visitors get a page that renders before they notice waiting.

02

Web applications

Next.js or Nuxt for dashboards, portals and authenticated products. Server rendering where it helps, client state only where it’s earned.

03

Headless CMS

A content model your team can actually fill in, wired to whichever CMS fits — Sanity, Storyblok, Payload, Contentful or Git-based markdown.

04

Design systems

Tokens, components and documentation, so the fifth page looks like the first and a new developer doesn’t reinvent the button.

05

Performance work

Core Web Vitals audits on field data, bundle triage, image and font strategy, and third-party scripts put on a leash.

06

Rescues & rebuilds

Inherited codebases with no tests and no documentation. We stabilise first, then work out what’s worth keeping.

The toolkit

What we
work with.

Frameworks

  • Astro
  • Next.js
  • Nuxt
  • React
  • Vue
  • TypeScript

Content

  • Sanity
  • Storyblok
  • Payload
  • Contentful
  • Headless WordPress
  • MDX

Infrastructure

  • Cloudflare
  • Vercel
  • Netlify
  • PostgreSQL
  • Playwright
  • GitHub Actions

What you get

In your hands,
not ours.

Questions

The awkward
ones.

Which framework will you use?

Whichever suits the problem. Content-led sites go to Astro because they ship next to no JavaScript. Applications with auth, dashboards and heavy interaction go to Next.js or Nuxt. The reasoning is written into the scope, and you never pay for our preferences.

What does “fast” actually mean here?

Largest Contentful Paint under 2.5 seconds, Interaction to Next Paint under 200 milliseconds and Cumulative Layout Shift under 0.1 — measured at the 75th percentile of real mobile visitors, not as a lab score on a desktop connection.

Can you work with our existing design team?

Yes. We build from your Figma, and we flag the places where a design will fight the browser before we build them rather than after.

Do you do WordPress?

We do — mostly as a headless CMS behind a modern front end, or as maintenance on a site that’s working. We won’t recommend a new WordPress build when a static site would be faster and cheaper to run.

Do you handle hosting?

We set it up in your account, on Cloudflare or Vercel or wherever fits, and hand you the keys. We’ll keep managing it after launch if you’d rather not.

How long does a build take?

A marketing site is typically four to eight weeks. An application depends entirely on scope, which is exactly why we scope it properly first and quote against something real.