← back to repo-healthcheck

repo-healthcheck · repo audit

What every repo should have

Sample data
scope: sample-org, sample-team
generated 2026-09-04 21:23
12 repos audited
12
repos audited
5
have at least one gap
2.8
avg. gaps per repo
License
most common gap — 5/12 repos

The checklist

Every standard this account's repos are measured against, grouped by kind. Archived repos are exempt from all of it — they won't be improved, so nothing here is held against them. Branch-protection and pyproject.toml can legitimately read "n/a" (a paid-plan limit on private repos, or a non-Python project) rather than pass/fail.

Reference only, not clickable — use the filters in the table below to narrow the list.

RM
README
a README file exists at the repo root
2/12 missing
CM
CLAUDE.md
repo has a CLAUDE.md for Claude Code
4/12 missing
LC
License
GitHub detects a recognized license
5/12 missing
DS
Description
the repo's About description is filled in
1/12 missing
TP
Topics
at least one topic is set
5/12 missing
GI
.gitignore
a .gitignore file exists at the repo root
1/12 missing
TS
Tests
a tests/ or test/ directory exists
4/12 missing
CI
CI config
a CI config exists at the root (.github/ for GitHub Actions, .gitlab-ci.yml for GitLab CI)
5/12 missing
CN
Contributors
someone besides the owner has committed
5/12 missing
AC
Active
pushed within the last 180 days
4/12 missing
PR
Branch protected
force-push and deletion disallowed on the default branch — private repos on a free GitHub plan can't be checked at all (shown as unknown, not unprotected)
2/12 missing · 1 n/a
PY
pyproject.toml
Python repos only — has a pyproject.toml at the root
0/12 missing · 5 n/a

Every repo, worst first

Sorted by gap count so the repos needing the most attention surface at the top. Click a checklist item below to filter to just the repos missing it, or click any column header to sort by it — click another header to add it as a tie-breaker, click a sorted header again to reverse it, a third time to drop it.

Checklist column codes — Docs: RM=README, CM=CLAUDE.md  |  Standards: LC=License, DS=Description, TP=Topics  |  Structure: GI=.gitignore, TS=Tests, CI=CI config  |  Activity: CN=Contributors, AC=Active

click once for missing, twice for has it, three times to clear — combine multiple. Rows shown "n/a" for a filter never match either state. "Forks only" / "Originals only" toggle independently of that and clear with the other filters.
Repo RMCMLCDSTPGITSCICNAC Branch protectedpyproject.toml License type Contrib. Forks Topics src/ Last push Gaps
legacy-importer
no description
not protectedyes missing 1 0 src/ 2024-11-02 11
tutorial-notebook
A worked example notebook from a conference talk.
protectedn/a missing 1 1 2022-01-09 7
sample-team/internal-wiki-export · gitlab
Exports the internal wiki to static HTML.
not protectedyes missing 1 0 src/ 2025-02-11 7
dotfiles
Personal shell and editor configuration.
protectedn/a missing 1 0 src/ 2026-08-15 6
rails-starter · fork
Fork of an upstream Rails starter template, customized for internal use.
protectedn/a MIT 1 0 railsstarter src/ 2025-05-18 2
gplv3-toolkit
Command-line utilities released under the GPL.
protectedyes GPL 4 2 gplutilities src/ 2026-07-30 clean
metrics-agent
Lightweight metrics collection daemon.
unknownyes MIT 2 0 observability src/ 2026-08-28 clean
old-prototype
Early prototype, superseded by taskflow-api.
protectedyes missing 1 0 src/ 2021-06-14 clean
taskflow-api
Task orchestration API used by the internal ops dashboard.
protectedyes MIT 6 3 pythonfastapiinternal-tool src/ 2026-09-01 clean
terraform-modules
Reusable Terraform modules for our cloud infrastructure.
protectedn/a MIT 5 4 terraforminfra src/ 2026-09-03 clean
widget-frontend
React frontend for the widget platform.
protectedn/a MIT 8 6 reacttypescript src/ 2026-09-02 clean
sample-team/data-pipelines · gitlab
ETL pipelines for the analytics warehouse.
protectedyes AGPL 3 1 etlairflow src/ 2026-08-25 clean