Python repositories reading strong

Every public repository surveyed, browsable and searchable. Including the unflattering ones — a tool that only published good results would be a badge vending machine, not a diligence instrument.

All bands Strong Adequate 123 surveyed
Sort Relevance Newest Stars Lines of code Files History Findings Worst band
RepositoryLanguageSizeStarsReadBand
dograh-hq/dograh 2 adequate · 3 strong Python 356,854 lines 5,972 2026-10-28 strong
wandb/wandb 1 adequate · 4 strong Python 427,201 lines 11,308 2026-10-22 strong
xonsh/xonsh 4 strong Python 130,236 lines 9,685 2026-10-23 strong
flaskbb/flaskbb 1 adequate · 4 strong Python 48,012 lines 2,665 2026-11-03 strong
aboutcode-org/scancode-toolkit 1 adequate · 3 strong Python 1,825,803 lines 2,662 2026-11-03 strong
bridgecrewio/checkov 1 adequate · 4 strong Python 616,704 lines 9,098 2026-10-23 strong
allegro/ralph 2 adequate · 3 strong Python 106,444 lines 2,532 2026-11-03 strong
frappe/builder 2 adequate · 3 strong Python 89,840 lines 2,464 2026-11-03 strong
sodadata/soda-core 1 adequate · 4 strong Python 103,426 lines 2,463 2026-11-03 strong
bentoml/bentoml 2 adequate · 3 strong Python 113,058 lines 8,914 2026-10-22 strong
freeipa/freeipa 2 adequate · 3 strong Python 678,513 lines 1,298 2026-11-07 strong
onionshare/onionshare 1 adequate · 3 strong Python 56,858 lines 7,184 2026-10-23 strong
tautulli/tautulli 2 adequate · 3 strong Python 639,556 lines 6,618 2026-10-23 strong
django-oscar/django-oscar 4 strong Python 94,057 lines 6,627 2026-10-23 strong
roxy-wi/roxy-wi 2 adequate · 3 strong Python 178,738 lines 1,833 2026-11-03 strong
dbt-labs/metricflow 2 adequate · 3 strong Python 1,022,841 lines 1,857 2026-11-03 strong
superlinked/sie 2 adequate · 3 strong Python 1,030,851 lines 3,476 2026-10-28 strong
sqlmesh/sqlmesh 2 adequate · 3 strong Python 338,931 lines 3,335 2026-10-28 strong
owasp/nettacker 2 adequate · 3 strong Python 54,785 lines 5,685 2026-10-23 strong
zenml-io/zenml 1 adequate · 4 strong Python 597,046 lines 5,624 2026-10-22 strong
emissary-ingress/emissary 2 adequate · 3 strong Python 201,565 lines 4,521 2026-10-23 strong
celery/kombu 4 strong Python 63,448 lines 3,151 2026-10-23 strong
oauthlib/oauthlib 1 adequate · 3 strong Python 24,733 lines 2,988 2026-10-23 strong
dbos-inc/dbos-transact-py 4 strong Python 79,825 lines 1,653 2026-10-28 strong
outflanknl/redelk 1 adequate · 3 strong Python 40,656 lines 2,684 2026-10-23 strong
frappe/frappe_docker 2 adequate · 3 strong Python 10,623 lines 2,604 2026-10-23 strong
meltano/meltano 1 adequate · 3 strong Python 146,467 lines 2,667 2026-10-22 strong
gitguardian/ggshield 1 adequate · 3 strong Python 117,171 lines 2,009 2026-10-23 strong
dj-stripe/dj-stripe 4 strong Python 49,518 lines 1,795 2026-10-23 strong
django-helpdesk/django-helpdesk 2 adequate · 3 strong Python 40,714 lines 1,692 2026-10-23 strong

What a band means. A band sums up one reading of one commit: strong, adequate or significant findings. Here it counts the project's code, process, product, security and operations. A report reads more than that, so its band can differ from its row.

How listing works. Every public repository surveyed is listed — assessing public work is commentary on public work, and a library that hid the small ones would be quietly editorialising about which code counts. Private repositories are never listed. Anyone who proves control of a repo can attach a response to a finding, request a re-run, or delist it. Delisting is immediate and no-questions. An owner's response is removed only when it is unlawful, impersonates someone, publishes personal data or a credential, or is not about the finding. Disagreeing with the report is never a reason. To report a response, or to reach us about one, write to takedown@borehole.dev. There is no org-level score. Repositories are listed one by one, and sorting by band orders them by their own readings. Takedown: one email, 48 hours.