Leaderboard
Every publicly analyzed repository (894 total), ranked by codebase health score - dead code, complexity, test file ratio, duplication, and file size.
See what breaks first
On expressjs/express, changing eb9df264-6bc3-46e3-b9db-f9bf0a63bdfa/index.js affects 109 other files - 96 directly, 13 transitively.
That's ArchSetu's blast-radius graph, traced automatically for every file in every repo it scans - not a health score, an actual dependency trace. Real result, computed live, not a mockup.
Open the Change Impact graphDead code is attack surface
Unreachable code still ships in your bundle. It can hide a forgotten auth check or a deprecated endpoint nobody is patching.
Complexity hides bugs from review
More branches means more edge cases a reviewer can miss - high-complexity functions are where vulnerabilities go unnoticed the longest.
Undeclared imports are supply-chain risk
A package imported but never declared can silently disappear or get typosquatted - see the Dependencies tab on any report.
894
Repos analyzed
9,277,318
Functions scanned
2,028,461
Dead functions found
362,328,054
Lines of code scanned
Reference repositories
Vetted, well-known open-source projects| # | Repository | Language | Health | Avg complexity | Dead code (functions) | Scan time | Last analyzed |
|---|---|---|---|---|---|---|---|
| 1 | expressjs/express★ 69,269 | JavaScript | 98/100 · A+ | 1.1 | 0 of 1,653 | 1.7s | 1mo ago |
| 2 | django/django★ 88,234 | Python | 96/100 · A+ | 1.8 | 1,272 of 32,564 | 14.3s | 1mo ago |
Community-submitted repos
Analyzed by other visitors, unvetted| # | Repository | Language | Health | Avg complexity | Dead code (functions) | Scan time | Last analyzed |
|---|---|---|---|---|---|---|---|
| 426 | lysine-dev/okio★ 9,017 | Kotlin | 80/100 · A | 1.9 | 926 of 2,471 | 2.2s | 1mo ago |
| 427 | ethereum-lists/chains★ 9,825 | Kotlin | 80/100 · A | 3.2 | 39 of 53 | 2.4s | 1mo ago |
| 428 | ianyh/Amethyst★ 16,200 | Swift | 80/100 · A | 2.9 | 57 of 624 | 1.4s | 1mo ago |
| 429 | ish-app/ish★ 20,179 | C | 80/100 · A | 3.6 | 1,048 of 1,936 | 1.6s | 1mo ago |
| 430 | gentilkiwi/mimikatz★ 21,729 | C | 80/100 · A | 1.8 | 1,274 of 1,541 | 2.4s | 1mo ago |
| 431 | iovisor/bcc★ 22,576 | C | 80/100 · A | 3.3 | 1,238 of 3,893 | 3.7s | 1mo ago |
| 432 | curl/curl★ 42,467 | C | 80/100 · A | 6.8 | 1,946 of 6,902 | 7.0s | 1mo ago |
| 433 | ml-explore/mlx★ 27,704 | C++ | 80/100 · A | 2.9 | 857 of 4,904 | 4.2s | 1mo ago |
| 434 | x64dbg/x64dbg★ 48,994 | C++ | 80/100 · A | 2.7 | 2,083 of 3,577 | 5.6s | 1mo ago |
| 435 | z-song/laravel-admin★ 11,149 | PHP | 80/100 · A | 2.9 | 364 of 2,159 | 3.2s | 1mo ago |
| 436 | roots/sage★ 13,244 | PHP | 80/100 · A | 3.0 | 11 of 11 | 0.9s | 1mo ago |
| 437 | thephpleague/flysystem★ 13,580 | PHP | 80/100 · A | 2.2 | 526 of 1,479 | 1.3s | 1mo ago |
| 438 | getgrav/grav★ 15,588 | PHP | 80/100 · A | 3.5 | 902 of 5,677 | 7.6s | 1mo ago |
| 439 | BookStackApp/BookStack★ 18,942 | PHP | 80/100 · A | 3.3 | 293 of 6,652 | 14.1s | 1mo ago |
| 440 | dotnet/BenchmarkDotNet★ 11,463 | C# | 80/100 · A | 3.0 | 3,805 of 3,933 | 4.5s | 1mo ago |
| 441 | microsoft/semantic-kernel★ 28,365 | C# | 80/100 · A | 2.7 | 11,063 of 20,127 | 15.1s | 1mo ago |
| 442 | doocs/advanced-java★ 79,015 | YAML | 80/100 · A | 1.0 | 0 of 1 | 1.8s | 1mo ago |
| 443 | qdrant/qdrant★ 33,578 | Rust | 80/100 · A | 3.1 | 908 of 3,810 | 7.3s | 1mo ago |
| 444 | nushell/nushell★ 40,082 | Rust | 80/100 · A | 3.5 | 5,152 of 7,681 | 9.1s | 1mo ago |
| 445 | FuelLabs/fuels-rs★ 43,099 | Rust | 80/100 · A | 3.9 | 275 of 550 | 2.5s | 1mo ago |
| 446 | IceWhaleTech/CasaOS★ 36,861 | Go | 80/100 · A | 3.2 | 183 of 499 | 3.7s | 1mo ago |
| 447 | schollz/croc★ 38,413 | Go | 80/100 · A | 5.5 | 136 of 544 | 1.5s | 1mo ago |
| 448 | danielmiessler/Fabric★ 43,195 | Go | 80/100 · A | 4.3 | 464 of 1,445 | 14.0s | 1mo ago |
| 449 | charmbracelet/bubbletea★ 43,950 | Go | 80/100 · A | 3.3 | 72 of 635 | 1.4s | 1mo ago |
| 450 | nektos/act★ 71,201 | Go | 80/100 · A | 3.8 | 305 of 1,312 | 4.3s | 1mo ago |
