06Studio — Self-initiated

Loam

Compute you grow

A fictional client selling cultivated biological compute — mycelial lattice and organoid tissue grown on ceramic scaffold, cultivated in vaults and rented by yield. Fifteen stills, one locked specification, and not a single exterior shot.

Loam — a sawn section through cultivated substrate showing bone-white strata, red capillaries and an embedded white ceramic lattice against black.
Role
Concept · Brand strategy · Art direction · Copywriting · Frontend engineering
Stack
Next.js 16 (Turbopack) · React 19 · Tailwind v4 · TypeScript · AVIF / ffmpeg pipeline
Year
2026
Discipline
Brand & Art Direction
Stills shipped15, every one in section
PaletteFour colours, locked
Media on the wire1.9 MB, down from 4.5
First paint0.64 MB
01

A fictional client with a real brief

Loam rents cultivated biological compute. Living substrate — mycelial lattice and organoid tissue grown on an inert ceramic scaffold — is cultivated in vaults and rented by yield to labs doing protein folding, materials simulation and climate modelling. None of it exists.

The exercise was to make a company that does not exist read like one that files quarterly reports. That is a harder problem than it sounds, because the failure mode of speculative brand work is whimsy: the moment the fiction winks at you, the craft stops counting. So the whole build was run as though the client were real and difficult.

02

One rule: everything is shown in section

A typical infrastructure site shows exteriors — data-centre facades, server aisles receding into blue haze, a hero shot of a building at dusk. Loam shows none of that. Every single asset is a cut face.

The reasoning is literal. Loam's entire claim is about what happens inside the substrate: the strata it lays down, the capillary architecture it grows, the scaffold it swallows. If that is the claim, then the photography should only ever show the inside. So each image is sawn through and presented flat-on, perpendicular to the cut surface, lit evenly as if from a copy stand — no rim light, no cast shadow, no three-quarter angle, no vanishing point, nothing floating.

03

A locked specification, fifteen times

Consistency across a generated image set is not a prompting trick, it is a specification problem. Every still was written against the same fixed clause block: a strict four-colour palette — bone white, wet amber, capillary red, oxide black, and nothing else — large-format plate photography at 120mm and f/16, absolutely flat focus corner to corner, clinical and unsentimental.

The more useful half was the negative list, written per image to name the specific cliché that section would otherwise attract. No bar chart or axis on the metrics plate. No padlock on the encryption plate. No staircase on the developer-progression row. No whale or creature on the pricing plate, where the brief asks for strata curving on a scale too large to picture. Naming the failure in advance is what kept fifteen separate generations reading as one photographic series. The full brief ships in the repo.

04

The fiction has to survive the boring sections too

Anyone can art-direct a hero. The test is whether the language holds through pricing, integrations and the security section — the parts of a SaaS site that default to stock phrasing.

So the standard sections were rewritten in the substrate's own vocabulary rather than translated into it. Onboarding is Inoculate, Cultivate, Harvest, not sign up, configure, deploy. Capacity is sold in cultivation blocks and yield-hours, and you pay for yield delivered rather than hours the vault stayed lit. Security opens by conceding the actual problem — the substrate is alive, which makes containment a physical problem before it is a policy one — then describes sealed cells where every capillary terminates at the wall, and gated channels that simply stay grown shut.

05

Encoded once, not optimised at runtime

Fifteen macro plates is a lot of pixels to put on a landing page, and the assets are fixed, so there is no reason to pay a server to re-derive them on every request. Every still ships as AVIF with a JPEG fallback through a small Art component, and the encode happens ahead of time via ffmpeg. No runtime optimiser, no sharp in the dependency tree.

The component is a picture element set to display: contents, which keeps it out of the box tree entirely. Without that, the picture becomes the image's parent and the h-full and absolute inset-0 rules these sections rely on resolve against an inline element of auto height instead of the section wrapper — a quiet layout break that only shows up once real art replaces the placeholder.

The result: media on the wire fell from 4.5 MB to 1.9 MB, and first paint is 0.64 MB because everything below the fold is lazy. Two full-width banner bands had their sources re-cropped toward the aspect those bands actually display, where object-cover had been throwing away around seventy percent of every byte downloaded.

A case study is a summary. The site is the argument.

Loam is live — go and use it, then tell us what you want built.