outbid.lol publicly showed ~$49,000 collected within days of launching a simple pay-to-rank leaderboard. BidBoard is the full boilerplate to launch that exact model in your niche — Next.js, Stripe, admin panel, docs. You keep 100% of what your board earns.
$ npm install $ npm run setup # .env + database + demo seed data $ npm run dev ✓ Ready — your leaderboard is live at localhost:3000
The opportunity
outbid.lol proved it in public: a side project where businesses bid real money for leaderboard rank, with a live revenue counter for the whole internet to watch. The mechanics are almost unfairly good:
Every listing is a business that wants eyeballs. A ranked board with click-through links is the simplest ad unit ever invented — and they pay upfront to be on it.
The moment someone takes the #1 spot, the previous holder has a reason to pay again. Rank battles between two egos are pure margin — you sell the same pixel twice.
A public, growing "total collected" number is the story. Screenshot it, post it, and the board's own success becomes the reason the next bidder shows up.
The format is already being cloned into verticals — outbid.immo for real estate and indie.game for indie games exist right now, and every week another niche gets taken. The general version has been done. The niche versions are the open ground — the question isn't whether niches get claimed, it's whether you claim yours.
What you get
Everything below ships in the box, working end-to-end from the first npm run dev —
with seed data so the board looks alive on day zero.
Lifetime bid totals decide rank, ties go to the earliest bidder, and any spot can be outbid for $1 more.
Real payments wired end-to-end — checkout, webhook verification, and bids that only hit the board once they're paid.
No Stripe keys yet? Bids are accepted instantly with no payment so you can click through the entire flow locally.
Repeat bids stack onto the same listing, with a built-in "claim #1 for $X" calculator and +/− bid stepper.
Password-protected /admin to hide or delete listings. Spam costs money by design — bids only appear after payment.
Every listing link routes through /out/<id> redirects, so you can show bidders the clicks they're paying for.
A latest-bids feed, a stats page, and the famous revenue counter in the footer — your best marketing asset.
URL and @handle normalization with de-duplication, plus auto-scraped titles and descriptions for submitted sites.
27 default categories, fully editable to your niche in one config line. Niche boards convert better than general ones.
Name, tagline, bid economics, and categories in site.config.ts; the entire color theme as CSS variables in one CSS file.
README, CUSTOMIZE.md, and DEPLOY.md — quick start, rebranding walkthrough, and deploy guides for Vercel, Railway, Fly.io, and VPS.
Build and launch as many boards as you want, keep everything they earn. The only restriction: don't resell the boilerplate itself.
Built with Next.js 14 (App Router) · TypeScript · Tailwind CSS · Prisma + SQLite · Stripe Checkout
Setup
Basic dev comfort is all it takes — if you can run npm commands and edit a config file, you can launch.
npm install && npm run setup && npm run dev — that's the whole local setup. Demo mode accepts bids instantly with no payment, so you can click through the entire product before touching Stripe.
Add your Stripe keys to .env, point a webhook at your domain, and the board takes real money. Every payment goes straight to your Stripe account — no middleman, no cut.
Pick a niche, edit site.config.ts and one CSS file to make it yours, and ship to Vercel, Railway, or a VPS. DEPLOY.md walks through every option step by step.
Claim your corner
Real estate and indie games are already taken. One deploy per niche — the license covers unlimited sites.
FAQ
Last call to be early
One-time launch price · full source · unlimited boards · 100% of the revenue is yours