Every codebase has files that nobody owns. Files too complex to
understand. Files last touched 3 years ago by someone who left.
They never show up in sprint planning — but they cause the most
bugs, the slowest onboarding, and the worst incidents.
I built deathbed to make them visible.
What it does
Run it inside any git repo:
pip install deathbed
cd your-project
deathbed
You get a full file health report scored across 6 metrics:
- Size — lines of code
- Age — days since last commit touched this file
- Churn — how many times it's been modified
- Complexity — cyclomatic complexity via radon
- Authors — how many unique people have touched it
- Tests — whether a corresponding test file exists
Each file gets a health score from 0-100 with a plain-English
diagnosis like "complexity graveyard", "legacy ghost", or
"too many cooks".
Why I built it
I kept inheriting codebases with no idea where to start.
Which files are safe to touch? Which ones will break everything?
Which ones does nobody understand anymore?
No tool answered that question simply. So I built one.
It's completely free and offline
No API key. No config file. No account. Just:
pip install deathbed
Try it on a repo you know
git clone https://github.com/pallets/flask
cd flask
deathbed
Some of the results might surprise you.
GitHub: https://github.com/NikoloziKhachiashvili/deathbed
PyPI: https://pypi.org/project/deathbed
Top comments (0)