DEV Community

pr0biex
pr0biex

Posted on Originally published at stealthespot.lol

I Built a Pay-to-Rank Leaderboard Where Products Compete Through Transparent Bidding

I Built a Pay-to-Rank Leaderboard Where Products Compete Through Transparent Bidding


Product Hunt resets every 24 hours. SEO takes months. Traditional ads are opaque.

I built something different: a leaderboard where your rank is permanent, every bid is public, and you only pay the gap to climb.

Here's the tech behind Steal the Spot.

The Problem

  • Product Hunt votes reset daily — your #1 spot is gone tomorrow
  • SEO takes months — by the time you rank, competitors have caught up
  • Traditional ads are opaque — you never know if you're getting fair value
  • Leaderboards are either pay-to-play or popularity contests

What if there was a leaderboard where:

  • Your rank is permanent (until someone outbids you)
  • Every bid is public and transparent
  • You only pay the difference when raising your bid
  • You get email alerts when outbid with exact price to steal back

How It Works

1. List FREE ($0)

Paste your product URL, pick a category, get on the board instantly. No credit card required.

2. Pay the Gap to Climb

Rank = cumulative bid. Every dollar moves you up. When raising your bid, you only pay the difference (minimum raise: $2).

3. Hold #1 or Outbid

Take any rank including #1. When rivals outbid you, get an instant email alert with the exact price to steal your spot back.

The Architecture

┌─────────────┐     ┌──────────────┐     ┌─────────────┐
│   Next.js   │────▶│   Supabase   │────▶│    Dodo     │
│   16 App    │     │  Postgres +  │     │  Payments   │
│   Router    │     │    RLS       │     │  (INR/UPI)  │
└─────────────┘     └──────────────┘     └─────────────┘
       │                                        │
       ▼                                        ▼
  ┌─────────┐                            ┌─────────────┐
  │  React  │                            │  Webhooks   │
  │  Three  │                            │  (Refunds)  │
  │  Fiber  │                            └─────────────┘
  └─────────┘
Enter fullscreen mode Exit fullscreen mode

The Bidding System

No deposits, no refunds — bids are final and public. The rules are simple and server-authoritative:

  1. Your bid IS your rank — highest cumulative bid sits at #1, ties break to whoever got there first
  2. Pay the gap to raise — already bid $5 and want $20? You pay $15, not $20 (minimum raise: $2)
  3. Taking #1 costs leader bid + $2 — the reclaim price is always public, and outbid losers get it by email with a one-click fight-back link

The Math

export function calcMinOutbid(currentBid: number, minRaise: number = 2): number {
  return currentBid + minRaise;
}

export function calcRaiseCost(currentBid: number, targetBid: number): number {
  return targetBid - currentBid; // pay the gap, not the full amount
}
Enter fullscreen mode Exit fullscreen mode

Why server-authoritative matters

Rank previews never override the webhook. Concurrent bids are resolved with transactional locking (steal_apply_bid with advisory locks) and idempotent Dodo webhooks — two agents outbidding each other at the same second can't corrupt the board. Race-tested, not hoped.




## Spot City: The Visual Layer

Built an interactive 100-lot city grid called Spot City ([stealthespot.lol/spotcity](https://www.stealthespot.lol/spotcity)):

- Taller towers = more bids
- LOT 001 holds rank #1 (center plaza)
- Tap any building to inspect its product profile
- Tap any dashed lot to claim it immediately

## Tech Stack

| Layer | Technology |
|-------|------------|
| Frontend | Next.js 16 App Router, React Three Fiber |
| Database | Supabase (Postgres + Realtime + RLS) |
| Payments | Dodo Payments (INR/UPI native) |
| Hosting | Vercel |

### Key Features

- **Real-time leaderboard** — Supabase Realtime for live updates
- **Automatic refunds** — Dodo webhooks handle losers' deposits
- **RLS policies** — Row-level security for bid integrity
- **3D visualization** — React Three Fiber for product previews
- **INR/UPI** — Native Indian payment support

## Featured Slots

For brands that want guaranteed visibility:

- **30-day lease** at $50/mo
- **Placement above the leaderboard**
- **Premium visibility**
- **8 slots available**

Not pay-to-rank. Pay-for-placement.

## Current Stats (refresh from [/stats](https://www.stealthespot.lol/stats) before publishing)

- 15+ categories (AI, SaaS, Dev Tools, Marketing...)
- Free entry ($0) + pay-from-$2 climbs
- Live SVG rank badges, free JSON API (`GET /api/board`), 11 free SEO tools

## What's Next

- Seasons (board resets so there's always something to win)
- More category boards from demand
- Outbid-email analytics for sellers

## Try It

1. Go to [stealthespot.lol](https://stealthespot.lol)
2. Click "List Free"
3. Paste your product URL
4. You're on the board

If you want to rank up, place a bid. If you get outbid, you'll get an email.

---

*Built by [@probiex007](https://x.com/probiex007)*

#BuildInPublic #SaaS #Leaderboard #NextJS #Supabase
Enter fullscreen mode Exit fullscreen mode

Top comments (0)