TypeScript 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.
| Repository | Language | Size | Stars | Read | Band |
|---|---|---|---|---|---|
| lightdash/lightdash 2 adequate · 3 strong | TypeScript | 2,099,981 lines | 6,222 | 2026-11-08 | |
| thelounge/thelounge 2 adequate · 3 strong | TypeScript | 44,597 lines | 6,364 | 2026-11-08 | |
| getopenscreen/openscreen 1 adequate · 3 strong | TypeScript | 465,036 lines | 5,940 | 2026-11-08 | |
| generalaction/emdash 1 adequate · 4 strong | TypeScript | 717,818 lines | 6,171 | 2026-11-08 | |
| lesspass/lesspass 1 adequate · 3 strong | TypeScript | 21,489 lines | 6,068 | 2026-11-08 | |
| lukevella/rallly 2 adequate · 3 strong | TypeScript | 197,811 lines | 5,358 | 2026-11-08 | |
| partykit/partykit 1 adequate · 3 strong | TypeScript | 50,023 lines | 5,744 | 2026-11-08 | |
| formkit/formkit 1 adequate · 3 strong | TypeScript | 106,537 lines | 4,786 | 2026-11-08 | |
| surveyjs/survey-library 1 adequate · 3 strong | TypeScript | 534,480 lines | 4,913 | 2026-11-08 | |
| linuxfoundation/crowd.dev 1 adequate · 4 strong | TypeScript | 503,215 lines | 3,372 | 2026-11-08 | |
| frappe/lms 1 adequate · 4 strong | TypeScript | 226,623 lines | 3,368 | 2026-11-08 | |
| kanaries/graphic-walker 1 adequate · 3 strong | TypeScript | 57,148 lines | 3,286 | 2026-11-08 | |
| zenstackhq/zenstack 1 adequate · 3 strong | TypeScript | 218,120 lines | 2,955 | 2026-11-08 | |
| final-form/final-form 1 adequate · 3 strong | TypeScript | 14,932 lines | 3,048 | 2026-11-07 | |
| butterbase-ai/butterbase 1 adequate · 4 strong | TypeScript | 356,481 lines | 3,030 | 2026-11-07 | |
| kafbat/kafka-ui 5 strong | TypeScript | 112,603 lines | 2,820 | 2026-11-08 | |
| medplum/medplum 2 adequate · 3 strong | TypeScript | 1,057,184 lines | 2,778 | 2026-11-08 | |
| ory/polis 1 adequate · 4 strong | TypeScript | 53,510 lines | 2,269 | 2026-11-08 | |
| bugbakery/audapolis 1 adequate · 4 strong | TypeScript | 16,774 lines | 1,905 | 2026-11-08 | |
| open-mercato/open-mercato 2 adequate · 3 strong | TypeScript | 1,802,973 lines | 1,881 | 2026-11-08 | |
| maizzle/framework 2 adequate · 3 strong | TypeScript | 42,642 lines | 1,623 | 2026-11-08 | |
| jitsi/jitsi-meet-electron 1 adequate · 3 strong | TypeScript | 6,459 lines | 1,635 | 2026-11-08 | |
| wpengine/faustjs 2 adequate · 3 strong | TypeScript | 41,260 lines | 1,608 | 2026-11-08 | |
| influxdata/chronograf 2 adequate · 3 strong | TypeScript | 254,649 lines | 1,568 | 2026-11-08 | |
| jaegertracing/jaeger-ui 4 strong | TypeScript | 151,418 lines | 1,544 | 2026-11-08 | |
| growilabs/growi 2 adequate · 3 strong | TypeScript | 657,399 lines | 1,476 | 2026-11-08 | |
| inkeep/agents 2 adequate · 3 strong | TypeScript | 944,577 lines | 1,489 | 2026-11-08 | |
| supabase/storage 1 adequate · 4 strong | TypeScript | 219,933 lines | 1,352 | 2026-11-08 | |
| measure-sh/measure 2 adequate · 3 strong | TypeScript | 642,158 lines | 1,427 | 2026-11-08 |
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.