Twenty-five websites, each a different brand with its own palette, typeface and signature technique, designed and built end to end by Claude. This is the method, including the parts that did not work.
01 / The brief
Build twenty-five sites that share a codebase and nothing else. Each one gets its own brand, palette, typeface and one signature technique used nowhere else in the set. No site may be mistaken for another in a thumbnail lineup.
The hard part is not making twenty-five pages. It is resisting the pull toward a house style, which is the direction this kind of work drifts by default.
02 / The system
Every site was specified up front on a card: brand premise, a palette with fixed hex values, a headline face, a signature technique and a layout paradigm. The cards were then checked against each other so no two shared a face, an accent family or a technique. That matrix, not inspiration, is what keeps the set diverse.
Sites were built by separate agents working in parallel, each in its own git worktree on its own branch and port. Isolation matters more than it sounds: agents sharing one checkout collide on the build cache, and a project-wide typecheck fails one agent because another has a half-written file on disk.
03 / The stack
Next.js with React and TypeScript. Each site owns a route group with its own layout, its own self-hosted fonts and its own CSS variables, so the root layout stays bare and no visual DNA leaks between sites. Motion is GSAP, three.js and React Three Fiber where a site earns 3D, and Canvas2D or SVG where it does not.
Type is licensed from Fontshare and self-hosted. Imagery is procedural first: every site must be complete and beautiful with zero photographs before any image is generated, so a missing asset can never leave a hole.
04 / The iteration protocol
A finished build is not a finished site. Every site was handed to a second agent that had not built it, with one instruction: assume the build settled for the first good-enough version somewhere, and find where.
Design critique, then complexify. Judge the render against the concept, the typography and the composition, then find the two flattest moments on the page and push them further. A pass that only fixes bugs has failed its purpose.
Motion and interaction. Prove every animation actually runs by measuring the DOM, not by looking at a screenshot, and judge how each curve feels rather than whether it fires.
Polish, performance and accessibility. Contrast computed against real composited backgrounds, mobile judged as its own composition, console silent.
05 / What the passes found
This is the part worth publishing. Without exception, every site shipped a build that passed its typecheck, returned a clean page and still under-delivered its own concept. These are real findings from the passes, quoted from their reports.
The cover was 1406 pixels tall in a 900 pixel viewport. The headline clipped, and the button that opens the issue sat below the fold, so an arriving reader saw no way in. Rebuilt to fit the viewport exactly.
The particle word was rasterised at a fixed width, so on a 390 pixel phone the hero only ever showed the middle four letters. The whole signature reveal was unreadable on mobile.
A reveal set its marker on one element while the stylesheet watched a different one, so four steps of the event flow sat at zero opacity forever. On a phone it was a black void.
On a site about easing, the case-study runners rode a flat straight track, so the curves themselves were invisible. Each stage now plots its real ease, and the overshoot shows.
The signature effect was in the code and absent from the eye: the terrain morph ran, but read as noise. The range now rises out of the country, with the route drawn along its crest.
The headline scale silently did nothing (a setter that writes to the wrong place), and readers who prefer reduced motion got every headline frozen at its thinnest weight.
The pattern is consistent enough to be a rule: a green test proves the code runs, not that the design works. Nothing here was caught by a build. It took a critique.
06 / The work
15 sites have been through the full treatment. The remaining 10 appear on the index only once they have had the same three passes, so nothing published is a draft.
Manifest, Mira Kestner, OBSKURA, Meridian Line, PROVENANCE, Sentient, Sable Court, Churn, Cairn, The Broadwater Sound, deckmath, Nightjar, Straightedge, Poima, GROUNDTRUTH.