Bountylist

Small bounties for serial hackers

Thread

BountyList is a small organic list of "bounties" which are 1-4 week projects that can be completed by a single person. List your request for products(RFPs), one-off tasks, or MVPs that you want some extremely talented person to complete instead of yelling into the twitterverse. For now Bountylist is an open list for anyone to post a bounty, but in the future we may have a more curated list.

craigslist for serial hackers -- post your request for product, small projects, challenges, check out bountylist.org!

May 2024
May 2024, posting
  1. Bounty in plain words from the poster
  2. Claude 3 Haiku fields
An id made in the poster's browser
  1. Math.random() 0 to 1
  2. .toString(36) base 36
  3. .substring(2, 9) 7 characters a1b2c3d
Previewed, stored, then listed
  1. Job email a1b2c3d@bountylist.org public; yours is not
  2. API Worker stores the job a1b2c3d, status: review
  3. support@ asks the poster to confirm listed once they do

its single-blind by default so posters are anonymous and don't filter out applicants (yet)

everything is routed via email for now but will add that option, the issue is that it won't be single-blind

From a browser
  1. bountylist.org Next.js, no DB
  2. API Worker Hono
  3. Workers KV one namespace jobs:, users:, messages: …
From mail to an alias
  1. Email Routing
  2. email Worker email() handler
  3. Workers KV the same namespace
As committed in Sept 2024.

sending cold emails + different demographic(not 10-15 y/o kids) is a good filter for now. instead of posting into the twitterverse it might be better to post on here

adding some heuristics to filter ppl soon

getting ppl who are motivated / show signs of that is the main challenge with any marketplace

September 2024
Aug to Sept 2024, applying; accepted if a scraper rates a repo on the applicant's GitHub EXPERT or MASTER
  1. Applicant GitHub sign-in then Generate Email
  2. API Worker crypto.randomUUID().slice(0, 8) messages:1a2b3c4d
  3. Alias 1a2b3c4d@bountylist.org accepted: EXPERT or MASTER
Relay code from 3 Sept
  1. Applicant's mail to the alias
  2. Email Routing
  3. email Worker postal-mime; KV gives the poster 3 Sept code: only accepted aliases
  1. MailChannels, then Postmark a new email the email Worker never calls forward()
  2. Poster's inbox From support@To the posterReply-To the applicant replies skip the alias
February 2025

our AI recruiter identifies and vets top talent globally by skill-based ranking. like craigslist, our single-blind system enables you to hire directly.

2024–25, the talent list (uncommitted Workers code, Sept 2024; deploy unverified)
  1. Recruiter Reply on a profile
  2. API Worker crypto.randomUUID().replace(/-/g, '').slice(0, 10) 1a2b3c4d5e@bountylist.org
  1. Recruiter's mail to the alias
  2. email Worker Postmark, a new email
  3. Applicant's inbox From support@To the applicantReply-To the recruiter replies skip the alias
May to Aug 2026, as spread.xyz
  1. Writer signed in on a listing's page
  2. Thread a Durable Object per listing until 26 July the first writer stays its other side
  1. Mail From apply+<listing>@ to the poster
  2. Poster replies by email or from /inbox, sent directly
Until Aug 2026, when inbound email was removed
  1. email() handler sender not in the thread? reject
  2. Stored, re-sent From apply+<listing>@ to the other side
The writer never sees the poster's address. From 26 July 2026, one Durable Object held every thread.