100 for One · UX review · version three · 8 Sept 2026

The Hundred, redrawn

The stack rail is no longer one bar. Every activity owns a slot, because the rule now asks whether each one reached its own target. Four marks, one colour ramp, and a live audit of what is still open.

For Ridge and Toni · proposal · nothing here is built

The meter

Drag it

Push-ups is the primary. Everything below is the stack. Targets are the real ones off the live build.

Day not banked

The hundred, above100 of 100 push-ups
100150
Your stack, below, per activity0 of 7 closed
Log a setYour stack

Why the rail changed

The old rail adds all seven activities into one number and fills from the left. Today it reads 300 of 700. That 300 came from two activities finished hard and five never started. The same 300 could come from doing a little of all seven. Two completely different days, one identical bar.

It gets worse near the top. A member can reach 700 of 700 having done only six activities, because going over on one covers the gap left by the seventh. The bar would read full while an entire activity never happened, and Apex would still be out of reach. That is a bar telling the member the opposite of the truth.

Each activity owns a fixed slot, same order every day. Position becomes meaning. After a week a member knows the fourth block is cardio without reading a word, and a gap shows instantly instead of hiding inside an average.

Each slot runs to 150, not 100, with a hairline at its own hundred. All slots past their hairline is Apex. All slots full is Apex Animal. Both thresholds are drawn into the rail rather than written underneath it.

How the colour moves

One ramp, four stops. Every bar and every tile follows it.

White while you are working. Any activity below its own target.

Gold the moment an activity closes. Hit the target and that bar goes gold. Every bar gold, whole suite on, is Apex.

Red once two things are past their targets. Push-ups alone never turns red, because push-ups alone cannot make Animal. Red starts when push-ups and at least one activity are both past, and it advances at the speed of whichever is behind. Both at 150 is full red, and that is Animal.

Ice once the whole set is climbing. Add the energy across all eight. Below two thirds of the maximum everything stays red. Above it the whole set moves toward ice, arriving when the last activity reaches 150.

Two thirds of the maximum is every activity at exactly its own hundred, which is the Apex condition. So the ice ramp starts at Apex and runs to Apex Animal. That fell out of the numbers rather than being designed.

The four day marks, lowest first

Each rung is a whole day. Nothing carries over and nothing is partial: a day either reaches a rung or it does not.

Animal and Apex measure different things. Animal is how hard you went. Apex is how much you covered. A day can be both, and when it is, Apex shows, because it asks for more.

And how a year of them looks

The ranks a member can earn

The four marks above are what a single day earns. These are what a year earns. Everything here is Ridge's list of 8 September and none of it is built.

For Toni

Hand this to your Claude

One button copies a complete written brief: the rules, the colour engine, the thresholds and the acceptance tests. Paste it into Claude and it has everything it needs without reading this page.

What is now done, and what is still open

Checked against the live app on 8 September 2026, not against a document. Everything below was read off the running build.

What is not changing

The four tab structure. The Room as the group tab name. The plate artwork and the parchment. The motto, exact: Mens sana in corpore sano. The maker mark. The log tiles and their native units. The primary activity grades the day. The ten thousand repetition badge and lifetime totals, which belong to the person and never reset.

Mens sana in corpore sano.
Colours are the existing build's own. Ice blue #7FD3EA is the only new value.
Nothing on this page is approved and nothing has been sent to Toni by the Program Office.