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 124 surveyed
Sort Relevance Newest Stars Lines of code Files History Findings Worst band
RepositoryLanguageSizeStarsReadBand
plotly/plotly.py 1 adequate · 3 strong Python 591,790 lines 18,855 2026-10-23 strong
defectdojo/django-defectdojo 2 adequate · 3 strong Python 1,413,006 lines 5,183 2026-11-03 strong
vectifyai/openkb 1 adequate · 3 strong Python 62,199 lines 4,842 2026-11-03 strong
robusta-dev/krr 2 adequate · 3 strong Python 10,833 lines 4,769 2026-11-03 strong
borgbackup/borg 4 strong Python 109,282 lines 13,789 2026-10-25 strong
pydantic/logfire 1 adequate · 3 strong Python 182,901 lines 4,530 2026-11-03 strong
mljar/mercury 2 adequate · 3 strong Python 46,033 lines 4,357 2026-11-03 strong
sqlalchemy/sqlalchemy 1 adequate · 3 strong Python 644,247 lines 12,189 2026-10-25 strong
algorithmicsuperintelligence/optillm 2 adequate · 3 strong Python 57,794 lines 4,335 2026-11-03 strong
kludex/starlette 4 strong Python 28,883 lines 12,640 2026-10-25 strong
swanhubx/swanlab 4 strong Python 75,429 lines 4,350 2026-11-03 strong
browser-use/workflow-use 1 adequate · 3 strong Python 36,171 lines 4,244 2026-11-03 strong
rotki/rotki 2 adequate · 3 strong Python 1,121,031 lines 4,073 2026-11-03 strong
lektor/lektor 4 strong Python 40,552 lines 3,949 2026-11-03 strong
sissbruecker/linkding 2 adequate · 3 strong Python 47,514 lines 11,262 2026-10-25 strong
ontos-ai/knowhere 2 adequate · 3 strong Python 252,704 lines 3,893 2026-11-03 strong
octodns/octodns 1 adequate · 3 strong Python 55,036 lines 3,775 2026-11-03 strong
frappe/frappe 2 adequate · 3 strong Python 548,700 lines 10,846 2026-10-25 strong
neuml/txtai 1 adequate · 3 strong Python 63,035 lines 13,029 2026-10-23 strong
truera/trulens 4 strong Python 215,801 lines 3,628 2026-11-03 strong
pypa/pip 4 strong Python 97,408 lines 10,287 2026-10-25 strong
bentoml/openllm 4 strong Python 3,461 lines 12,563 2026-10-23 strong
coreruleset/coreruleset 4 strong Python 119,141 lines 3,340 2026-11-03 strong
enterprisedb/barman 4 strong Python 138,467 lines 3,272 2026-11-03 strong
octoprint/octoprint 1 adequate · 3 strong Python 225,605 lines 9,117 2026-10-25 strong
kedro-org/kedro 1 adequate · 4 strong Python 91,632 lines 11,031 2026-10-23 strong
skypilot-org/skypilot 2 adequate · 3 strong Python 724,101 lines 10,738 2026-10-23 strong
django-cms/django-cms 1 adequate · 3 strong Python 132,493 lines 10,679 2026-10-23 strong
chdb-io/chdb 1 adequate · 3 strong Python 266,143 lines 2,922 2026-11-03 strong
polarsource/polar 2 adequate · 3 strong Python 1,144,782 lines 10,411 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.