The daily bug-spotting puzzle for developers

Bughunt is a daily puzzle for people who read code. Every day there is one short function in JavaScript, TypeScript, Python, Go, Rust, Java, or C, with exactly one planted bug. Your job is to find the buggy line. Click it, get an instant verdict, and read a short explanation of what was wrong and how to fix it. You get three attempts. Solve the puzzle to keep your streak going, then share a spoiler-free result grid the way you would with Wordle.

Every puzzle is hand-written, not generated. The bug is subtle enough to make you actually read the code, but there is only ever one correct line, so a solve is a real read rather than a guess. The categories cover the mistakes that bite in real work: off-by-one errors, missing null checks, silent type coercion, closure and scoping traps, accidental mutation, forgotten awaits, reference-versus-value comparisons, and boundary conditions.

The whole thing runs in your browser with no account and no sign-up. The daily puzzle is the same for everyone on a given date, picked by a fixed calendar seed, so you and a coworker can compare results. Your streak, your mute preference, and whether you have seen the intro are the only things stored, and they live in your browser's local storage.

How to play

  1. Read the function. It is short, usually three to eight lines.
  2. Click the line you think has the bug. Keyboard works too: tab to a line and press Enter.
  3. A correct line flashes green and reveals the explanation. A wrong line flashes red and costs one of your three attempts.
  4. Come back tomorrow for a new bug and a longer streak.

Frequently asked questions

Is Bughunt free?
Yes. It runs entirely in the browser with no account, no ads, and no payment.
Which languages does it cover?
Seven: JavaScript, TypeScript, Python, Go, Rust, Java, and C. Each puzzle is tagged with its language and bug category.
Do I need to know all of those languages?
No. The bugs are the kind that show up across languages, and every puzzle comes with a plain-English explanation, so it doubles as a way to pick up a new language's gotchas.
What happens if I miss a day?
Your streak resets. The puzzle is tied to the calendar date, so a missed day breaks the run, the same as Wordle.
Can I play older puzzles?
Yes. The archive keeps the last 30 days, filterable by bug category. Practice puzzles never touch your daily streak, so you can replay freely.
How is the daily puzzle chosen?
A fixed epoch date maps each calendar day to one entry in the bug bank, so everyone provably gets the same puzzle on the same day without a server.