As built As a concept Page change
KILN.
← All work

Scroll — the blade is drawn from the word it is made of

Executed

Live · in production  ·  Design + build · executed.xyz

A subscription platform for a Singapore trading-education membership. Most of it is behind a door.

Open the live site ↗Next: Slow Glass

Role
Design + build
Type
Subscription platform
Stack
Cloudflare · Discord OAuth

executed.xyz · live in productionOpen the live site ↗

The Executed front page: a sword drawn in the letters of its own name runs corner to corner above the line Executed before the move happens, with a button to join the Discord and one for membership.

The door

What is sold here is mentorship, so the site is not a course. No modules, no lesson numbers, nothing to complete — a decision the interface has to keep in every place a progress ring would have been the obvious component.

Around that sit the three things a member pays for and a stranger must not reach: the recordings, a protected player, and a journal for their own trades. The whole build is the machinery for letting exactly the right people through one door — and for being straight, on every screen, about what it does and does not know.

01 · Whop Money moves a role is granted 02 · Discord The role the only source of truth 03 · Sign-in Read fresh never trusted from a token 04 · The gate can( ) a capability, not a role name yes → the member page no → a page that explains why, ungated No bot. Two OAuth scopes. The session is the only thing stored, and it is written at most once every ten minutes. 01 · Whop Money moves a role is granted 02 · Discord The role the only source of truth 03 · Sign-in Read fresh never trusted from a token 04 · The gate can( ) a capability, not a role name yes → the member page no → a page that explains why, ungated No bot. Two OAuth scopes. The session is the only thing stored, and it is written at most once every ten minutes.
Fig. 01 — the access chain, end to end

Behind the door

Five of the six member pages answer a stranger with a redirect. You can open the front door of EXECUTED yourself; you cannot open these.

The signed-in member dashboard: a tab bar across the top, a watched counter reading zero of twelve, and a panel for the week reading No trades of your own yet.
An empty week is left empty.Plate 01 — the desk
The protected player. A watermark reading at-member with a session code and clock sits over the picture, and a side panel lists the watermark handle, session, position and the time until it next moves.
The watermark follows the viewer.Picture is a stand-in — no file attached, and the page says soPlate 02 — the player
The CSV import, mid-map: a panel headed How the columns were read, pairing each journal field with a column from the uploaded file and an example value from its first row.
It reads columns, not formats.A sample export, made for this figurePlate 03 — the import
The library: recordings filed by date with tag chips across the top, and no lesson numbering or progress indicator anywhere.
Filed by date, read by tag.Plate 04 — the library
A panel of the day's scheduled USD economic releases with forecast and previous values, stamped with the time the schedule was last read.
Relayed, and stamped with when it was read.Plate 05 — the calendar
The locked-out page: a plain explanation that the account is signed in but has no active membership role, and what to do next.
Somebody has paid and still cannot get in.Plate 06 — locked out
01 / 06Scroll or drag

What went into it

Stamped before the page is sent

The watermark

Written in by the middleware that already checked the session — no extra request, no flash of a placeholder, and nothing a client-side toggle can undo.

Nothing leaves the browser

The journal

Statistics are computed where they are read and the log is stored locally. Importing a year of trades makes no request at all: a privacy property first, a cost property second.

Metered on writes, not bandwidth

Running cost

Session touches throttled to one per ten minutes, and the static half of the site routed around the worker entirely. That turned a launch-day quota ceiling into a rounding error.

The build refuses to ship

Proof

A member page slipping out of the gate fails the build, as does a route rule that would let one bypass it. Every guard was checked by feeding it a wrong input and watching it fail.

The constraint that shaped it

EXECUTED publishes no performance figures. No win rates, no returns, no equity curves — not its own and not anybody else's. It is written into the product's footer, and it is the most useful constraint in the build.

It removes every element this category normally reaches for: the results banner, the profit screenshot, the ticker of members' wins. What is left has to persuade on substance. It decides small things too — the accent is red, and in this industry red is the loss colour, so it is chrome and never sits beside a number.

The same rule governs this page. A case study is supposed to answer what did it achieve, and for a trading product every tempting answer is one the product itself refuses to make. So the claims here are engineering ones: it ships, it is gated, and the gate is checked against production on every deploy.

Next  ·  Signature  ·  Generative · WebGL

Slow Glass
The Slow Glass site: a pale glass form floating on near-black, with the words slow glass set large beneath it.