All projectsIndependent product Competitive Bidding Leaderboard

Fallen Throne

A public leaderboard with a kingdom around it.

Visit the product
My role
Product design, art direction & engineering
Built as
Independent product
Engagement
2026
Location
Independent product experiment

Fallen Throne live pixel-art leaderboard from king to lower ranks

Full size
Inside the productFallen Throne

The context

What needed
to work.

The premise is simple: submit a website or social profile, make a paid bid, and climb a public hierarchy. Cumulative paid spend decides the rank.

The pixel-art world makes that hierarchy understandable before the rules are read. Under the theatre, payment confirmation, listing identity, ranking, and tie-breaking need to remain explicit and reliable.

My contribution

I built the product and its visual world, connecting a responsive Next.js interface with Stripe payments, Cloudflare Workers, and Durable Objects.

Inside Fallen Throne

Explore the product.

The key workflows, up close.

01A visible hierarchy

The interface explains what it means to climb.

The king, dukes, knights, commoners, and lower ranks have distinct positions and visual treatments. Price-to-pass actions connect the joke to the actual interaction.

Fallen ThroneA visible hierarchy

Fallen Throne desktop bidding board with pixel characters and ranking tiers

Full size
The thinking behind it

Repeat bids strengthen the same normalized listing instead of creating duplicate entries for the same destination.

02A smaller kingdom

Recompose the board for the phone.

The mobile version uses tighter character tiers and its own controls. The hierarchy still reads from crown to floor while the main actions remain reachable.

Fallen ThroneA smaller kingdom

Fallen Throne mobile leaderboard with responsive rank composition

Full size
The thinking behind it

The layout preserves the product’s identity instead of reducing every rank to the same generic card.

03Entering the board

Make the paid action unambiguous.

The join flow captures the destination and bid, then hands payment to Stripe. A successful return verifies the payment before the public rank changes.

Fallen ThroneEntering the board

Fallen Throne mobile listing and bid entry flow

Full size
The thinking behind it

The browser cannot invent the amount paid. Unpaid, expired, malformed, and unrelated events do not become successful bids.

Behind the interface

The decisions
underneath.

  • Next.js
  • TypeScript
  • Stripe
  • Cloudflare Workers
  • Durable Objects

Deterministic ranking

Cumulative paid spend leads. Equal spend is resolved by outbound clicks, then the earlier paid claim, then a stable identifier.

Immediate, verified checkout return

Stripe Search can lag behind checkout. The return path verifies and merges the payment directly without counting it twice later.

Shared counters at the edge

Cloudflare Workers validate requests and build the board. Durable Objects keep click counters consistent across concurrent visitors.

My work on Fallen Throne

Built into
the product.

  • Custom pixel-art product and responsive hierarchy
  • Stripe-backed cumulative bidding
  • Verified checkout return and deterministic ranking
  • Cloudflare edge delivery and shared counters
Next project

Pulse

Lead-Prospecting Platform

Have a product
that needs this kind of care?

Let’s talk about it