Skip to main content

Websites

Websites people remember.

Built in Craft CMS, so your team can change them without calling us.

Brand & design studio 2020 Built by Duet

Supple Studio

Editorial control in Craft, transactions in Shopify — a hybrid commerce build for a Bath design studio, kept shipping across three build systems since 2019.

Civic / non-profit 2021 Built by Duet

Global Assembly

The web platform for a global citizens' assembly — a world map of lottery-selected members, and a content model a distributed comms team could actually run.

Design studio 2022 Built by Duet

Studio Eger

A solo Craft build for a design studio where editors crop every image to the designed ratio per slot — art direction enforced by the content model, not left to chance.

Independent school 2020 Built at Mud, front end by Dave

Kent College

One Craft install serving four schools — nursery, prep, senior and sixth form — carried across two CMS majors and a bundler swap over five years without a rewrite.

VFX & post-production 2023 Built at Mud, front end by Dave

Light VFX

A headless Craft and Next.js site for a VFX studio — a 17-block modular system, one unified video layer, and stewardship from first build through the Craft 5 upgrade.

Commercial property 2023 Built at Mud, front end by Dave

Croxley Park

A business-park site where lettings inventory and place-making share one Craft install — real availability data, an interactive estate plan and an editorial layer.

Three reads & the last one is ours.

How we build a site today: every change starts as a spec we write and is built by a fresh agent. Then it’s checked against the spec, read as code, and read by one of us. Pick a fault to see which read catches it.

Send a change that…

  1. A written spec

    Us

    What changes, and what done means.

    Passed.
  2. A fresh build

    An agent

    Built from the spec, with no memory of the last task.

    Passed.
  3. Checked against the spec

    A second agent

    Did it do what was asked? Is what it says true?

    Caught here.
  4. Read as code

    A third agent

    Correct, quick, accessible, safe and clear.

    Not reached.
  5. Read by a person

    Us

    The content, the claims and the voice.

    Not reached.
  6. Switched on

    Us

    Off until one of us has read it.

    Not reached.

Caught when it’s checked against the spec.

The build said its checks came back clean. The review ran them itself and found the checker had never started. A review that only read the code would have passed it.

Real, on this site · August 2026

Who writes it & who signs it off?

Agents do the implementation: templates, styles, scripts and database changes. What gets built, and whether it’s right, stays with us. Try handing one of ours over.

We write

Try handing one of ours to an agent.

Agents write

  • Templates
  • Styles
  • Scripts
  • Database changes
  • The check against the spec
  • The read as code

Agents are fast, they’re thorough, and given the chance they’ll write a confident sentence about their own quality that isn’t true.

Dave Wood, Duet

Written by agents & switched on by us.

This site is the worked example. Every case study on it arrived switched off, and goes live only once one of us has read it.

0 of 11 switched on by one of us

All 11 arrived switched off.

  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off
  • Not read yet Off

The hard questions & our answers.

Duet

A new site, a rescue, or something half-finished for a year? Tell us the shape of it.

Tell us what you’re building & get a fixed quote.

Or email [email protected] · We’ll come to you in Bath or Bristol.