Drill: Redesign the slop: take a generic SaaS landing page (gradient hero, 3 feature cards, emoji icons) and redesign it to avoid every anti-slop rule in claude-design. Target: same content, 10x less generic.
Interpretation: Built as Diffbind, an AI code review tool — the most cliché devtool SaaS archetype. The inversion anchors on a real annotated code diff (a seconds-vs-milliseconds bug caught) as the hero detail. Aesthetic: Resend/Vercel editorial restraint — warm-white canvas, one surgical terracotta accent, Inter + JetBrains Mono, no gradients or glass.
Diffbind leaves comments on pull requests the way a careful reviewer would — pointing at the line, naming the bug, and saying why. No nitpicks about formatting, no noise on generated files.
.github/workflows/diffbind.yml
A linter runs rule-by-rule. A reviewer reads the diff, asks what the author is trying to do, and checks whether the change accomplishes it. Diffbind is built the second way.
It reads the commit message and the surrounding code to figure out the goal — a bug fix, a refactor, a new feature — then judges the diff against that goal, not against a style guide.
Every comment is a line-anchored review note: the file, the line, what's wrong, and why. Never a vague “consider reviewing this file.”
It skips lockfiles, minified bundles, and anything in your .diffbindignore. If a diff has nothing to say, it says nothing — the PR gets a single quiet check.
These are real categories Diffbind flags on diffs — the kind of thing a careful reviewer catches on a second read, not the kind a compiler warns about.
Seconds vs milliseconds, cents vs dollars, bytes vs bits. The classic class of bug that compiles and passes tests.
Currency stored or summed in float instead of integer minor units — a rounding error waiting to ship.
Cache keys, query scopes, and auth checks that omit a user or org id — so one tenant can read another's data.
When a diff adds a code path but no test exercises it. Diffbind checks the diff against the test diff, not just coverage totals.
Pasted API keys, tokens, and private keys — caught by entropy and pattern, before the commit lands in history.
Destructive schema changes without a backfill, non-nullable columns added to populated tables, dropped indexes on hot paths.
It caught a milliseconds-vs-seconds bug that three of us signed off on. That's the moment we stopped thinking of it as a linter.
“Active developer” means someone whose pull requests Diffbind actually reviews in a given month — not every seat on your org. No annual contracts, cancel anytime.