← All work
00 / Aurora Tents · boutique event camping · 2026 Live preview · with the client

Twelve near-identical photographs, made into a place.

Aurora sells the twenty minutes at dusk when the lights come on inside a field of cream canvas. I had twelve photographs of it and no brand assets, so I built the page as one day: black, sunrise, daylight, dusk, black.

The page end to end · see it live
01 / The problem

A grid would have averaged them into one.

In one of the twelve there's a chalkboard on a stake with somebody's name on it, in front of the canopy it belongs to. The pitch was named before anyone arrived. That's the product.

The photographs are all cream canvas in warm light, so they're all the same value and nearly the same hue. Side by side with gutters between them, each reads as a weaker copy of the last. Everything after this follows from that: no gutters, motion instead of arrangement, and a ground colour that never stops moving.

Client
Aurora · safari and canvas tents, established 2025, UK wide
Mine
Art direction, colour system, the edit, the build
Not mine
The letterforms. Aurora own those. I cleaned the file, not the design
Given
Twelve photographs and a printed A-board, in a field
02 / The mark

My clever version was worse.

There was no logo file. The only version of Aurora's own name was a photograph of a printed board in a field.

The Aurora A-board photographed in the field, the wordmark set over a green aurora
Source · a photograph, letters 120px tall
The cleaned Aurora wordmark in white on a deep plum ground
Cleaned · same letterforms, on the page's plum

I wrote an automated trace to clean it. It closed the counters and turned AURORA into a blob, and my own check passed it, because the check measured ink overlap instead of looking at the render. I threw both away and cleaned the raster by hand in ChatGPT. The rule survived the failure: never redraw somebody else's letterforms. The swell on the R is the reason anyone knows it's theirs.

Everything around it stays quiet. Fraunces, Cormorant, a plain sans for reading, eight faces self-hosted. The mark is the only expressive thing on the page.

03 / The edit

The field is withheld for a third of the scroll.

A night sky of magenta and coral light with no horizon in frame
Sky, no ground
The same sky with a treeline appearing at the base of the frame
A horizon
The camera lower, the first tents visible against the trees
First canvas
A row of cream tents under the aurora with their lights on
The row, lit
The full field of tents at dusk
The field

Three sequences scrub against scroll position. The first opens on sky with no ground in it, which is the only frame not selling a tent, and holds the field back until you've been inside Aurora's colour long enough to want it. A hero image gives you the same field in the first second, and it's worth less for being free. The films are generated. Every interior in the body of the page is the client's own photograph, and that split is in section 05.

The decision I got wrong first

All three sequences loaded at once, so the hero had 1.3MB after twenty seconds while two films nobody could see took 11.6MB between them. Now a film only loads within one and a half screens of you, and only the first keeps the top resolution. Same weight, spent on what's actually in front of you.

04 / Colour

It opens on black so the colour has somewhere to go.

Black Purple Plum Sunrise Day Dusk, then black

Plum at the top would have opened the page near its own middle, and every colour after it would be a step sideways. From black there's a whole day to spend, and the first lit tent reads as lit rather than photographed. Each section hands over on the exact colour the next one opens on, sampled off the film frames rather than picked.

The sunrise carries no text at all. A ramp that has to stay legible under dark ink can travel about 400 pixels. Given its own screen it can travel the whole way, so it gets one. The loudest thing on the page is a section with nothing in it.

05 / The join

A photograph has an edge. A gradient doesn't.

A hard horizontal line where a photograph of grass meets a flat dark section
Before · the client drew arrows here
The same boundary with the photograph fading into the section colour and no visible join
After · the frame ends in the next section's colour

Every film now ends in the colour of whatever sits next to it, so by the time the seam arrives there's nothing to cut. The repair is the smaller half. Because the film is pinned, the same gradient weights the top and bottom of every frame and stops a wide field of cream canvas reading flat.

JoinFilm edgeSection edgeStep
Film 1 → inside#05030A#05030A0
Inside → film 2#894130#8941300
Film 2 → dawn#8A5937#8D59383
Day → film 3#F3E9DA#F1E7D92
Film 3 → close#0B050D#10080F5
Largest channel step across each join, averaged three pixels either side. Under six and there is no edge to see.
06 / Green

An aurora, with no green in it.

An Aurora A-board with a green aurora printed on it, standing in grass beside a cream canvas canopy
Theirs · green, photographed as found
A magenta and coral dusk sky over a field of cream tents
Mine · no green in anything I choose

The company is named after something everybody pictures as green, and its palette is a pink and orange dusk. So green stays in the photography, where it's grass and trees and taking it out would be retouching the truth, and appears in nothing I select. Their board stays green in the picture of their board.

Generating imagery under that rule taught me something I've kept. The word "aurora" overrides any instruction not to paint one, and a stronger negative made it worse, because the ban keeps the word in the sentence. Deleting the trigger and describing the light physically is what worked. You aren't giving instructions, you're choosing which prior to stand in.

The films are generated. The interiors, the canopy, the board and the named pitch are real, because the sentence those carry is this exists and we've done it. A generated photograph there isn't a shortcut, it's a different sentence.

07 / Where it stops

Two sections are deliberately unwritten.

Build and derig windows, what's included against what's hired in, the commercial model, the insurance. Every one is a question an organiser asks before they enquire and a fact I'd be inventing. There's a version of this page with all of it filled in confidently, and it would look finished and be worse.

No results yet either. It's been live with the client for a day.