Overview
Paste a public GitHub username and Deadfolio scores every public repository for signs of abandonment. On the ones worth a look, it runs an AI autopsy built from the repository's own evidence. Nobody is asked about their stack, project age or activity, because the repository already knows. The one question a person answers is why they actually stopped. The app is available in English and Brazilian Portuguese.
What it does
- Scan: a Dead Score from 0 to 100 for each public repository, from metadata only. No AI runs at this step.
- Autopsy: one Gemini generation per repository, validated against a strict schema and always ending with a “What We Cannot Know” section.
- Confirm: the creator says whether the inferred cause of death is right and can correct it in one sentence.
- Graveyard: published records, labeled UNVERIFIED because repository ownership is not verified.
How it’s built
- The Dead Score is deterministic and configurable: an inactivity ramp, archive status, and short bursts followed by silence. Forks, templates and experiments are kept apart, and the interface calls the score a heuristic, never a probability.
- The prompt treats repository text as untrusted data and keeps evidence, inference and unknowns separate. The model may not invent users, revenue or the real reason development stopped.
- Evidence collection ranks files deterministically, never fetches secrets, lockfiles or build output, and scrubs key-like strings before anything reaches the model.
- Reports are cached by repository and default-branch commit, so a repeat visit makes no AI call. A new commit triggers an offer to run a fresh autopsy.
- Abuse limits include a per-IP daily quota stored as a salted hash, one concurrent autopsy per IP, a global hourly guard, and a quota refund when the AI provider is at capacity.
- It is one Next.js app with no database: a key/value layer writes to the filesystem locally and to a private Vercel Blob store in production.
Deliberate limits
- No accounts, payments, notifications or moderation, on purpose.
- Only public repositories are analyzed.
- Ownership is not verified, so every published record is labeled UNVERIFIED.
