Skip to content

CasesFitness studioConcept build

IRONHOUSE

A coached strength club with no mirrors, whose page loads a barbell one plate a week until it has proved the +24kg it claims, then sends every call to action to one form: the waitlist for a club that is already full.

What we build for fitness studios, and what it costs.

Sector
Fitness, coached strength club
Signature
Kinetic slab type · twelve weeks loaded onto one bar
Conversion
Waitlist places and a two-session trial: the club is full, and says so
01

The brief

IRONHOUSE coaches strength on Pollard Street, in a cotton mill that stopped spinning long before anyone bolted a platform to its floor. It has six competition platforms, sessions of five athletes to one coach, and a membership capped at three hundred since 2019. It costs sixty-eight pounds a month, with no joining fee and no contract. The club is full, forty-one names are on the waitlist, and about ten places come free a month, so the forty-second name waits about four months.

There are no mirrors. A gym that takes its mirrors down has decided what it measures, and the website has to sell that decision to people who stopped believing the transformation photo years ago.

02

The idea

Strength is a number, so the page states a claim and puts the number under it. The hero is a two-size poster: STRONGER IS A at 122px over NUMBER. at about 390px, which runs across the seam onto the photograph of a loaded bar in acid. The one claim word is the biggest thing on the screen.

Everything below it is ruled like the club's own logbook. The three words Coached, Capped and Counted are set at 187px as the page's index, each row pointing at the section that proves it. The four programmes sit on a week grid from 06:00 to 21:00, the coaches carry a line of data under their own numbers, the notes from the floor are a dated ledger, and the form is a set of logbook rows.

One colour does the shouting: an acid chalk, #D7FF3E, that only lands on a number, a rule, the button and the marquee, and never sets a paragraph.

03

The signature move

The club's biggest claim is that a first twelve-week block adds 24kg to the squat on average. The page loads it. A barbell is drawn side-on in SVG to real proportions: a 2,200mm bar with a 28mm shaft, 450mm plates, and sleeves that run off both edges of the window. The stage sticks while the reader scrolls through four screens of run, and scroll picks the week.

Week one is 60kg, the bar and one 20kg plate a side. Each week a 1kg change plate slides along each sleeve from off-screen and stops dead, the bar recoils two pixels, the digits of the load roll in their own masks, a new row is written into the log and the oldest leaves upward. Every fourth week the house rule changes: Show up, Log every lift, Load the bar. In week thirteen the last pair goes on in acid, the load reads 84kg, and the payoff line says where the number came from: the 2025 logbooks. Scroll back and the plates come off in the same order.

The rest of the page uses the same motion at a lower volume. Section heads slam up from behind their masks with a four-degree skew that snaps flat, photographs wipe up from the bottom edge, and the cap draws three hundred squares row by row while its count steps to 300. Nothing fades in.

The club claims +24kg, so the page puts 24kg on a bar in front of you.

04

Why it converts

Gym sites sell a body the visitor will never have, in a room they will never train in. This page shows the terms instead: what it costs, how many people are allowed in the room, how many names are ahead of you and how long that takes, and what happens in week thirteen if the numbers did not move.

The ask is built from the same material. A scoreboard slides down once the hero has gone and stays: 300/300, 41 waiting, answered Fridays, and the button. The cap section draws the three hundred places as filled squares, then forty-one acid outlines for the waitlist, then a bone square marked 42, you. The form writes your line as you fill it, from your name to your programme and your hour, and the submit button uses the same words as every other button on the page: Join the waitlist.

05

How it is built

Every moving part is a CSS state switched by an attribute, so nothing can be left halfway when a component mounts twice. The hero's first second, from the headline slam to the acid flash and the count, runs as keyframes from first paint and needs no JavaScript. The set-piece's server HTML is its end state: the bar loaded to 84kg, all thirteen log rows and the four rules as a list. An inline script arms the scroll run before the page paints, and only for visitors who have not asked for reduced motion.

The numbers are tested. One function returns the load for each week, and a test holds week thirteen minus week one to the 24kg the copy claims. The waitlist and coaching arithmetic is tested too: two sessions a week for three hundred members is thirty floor hours for each of four coaches.

The waitlist form validates for real and sends nothing. Its choices are keyboard radio groups drawn as plates, and its success panel starts with the disclosure before it logs the entry.

IRONHOUSE is a fictional strength club, invented so we could build the site it would need. The club is not real. The build is: every section, every number in the logbook, every line of code.

Let’s make your digital work compound.

Choose a time on Gabriel’s calendar. We’ll go through where you are today, what’s slowing growth, and what’s worth doing first, whether or not we work together.

Gabriel Espinheira

Gabriel Espinheira

Senior software engineer · English or Portuguese

A focused 30 minutes, not a sales pitch.