One-command launch readiness scorecard for open-source repositories.
RepoReady scans a repo before you publish it and tells you whether it has the basics people trust: README quality, install path, license, tests, CI, examples, contribution docs, issue templates, PR template, package metadata, and obvious publishing risks.
Demo screenshot/GIF placeholder: run
repoready . --format markdown --output repoready-report.md, then capture the terminal score and generated Markdown report.
- Local-first CLI with zero runtime dependencies
- Text, Markdown, and JSON output
- CI-friendly thresholds with non-zero exit codes
- README section and installability checks
- License, manifest, tests, CI, examples, changelog, contributing guide, issue template, and PR template checks
- Basic secret-pattern and large-file warnings before public release
- Designed for AI-agent-generated repos that need a final human-quality launch pass
AI coding agents make it easy to create a repository in minutes. Publishing something people trust is still harder.
Many promising repos lose stars because the first visitor cannot answer simple questions:
- What does this do?
- Can I install it in one command?
- Is there a working example?
- Are there tests?
- Is it safe to clone?
- Can I contribute?
RepoReady turns those launch basics into a fast scorecard you can run locally or in CI.
From a local checkout:
python -m pip install -e .After the first PyPI release:
pip install reporeadyrepoready .Generate a Markdown report:
repoready . --format markdown --output repoready-report.mdUse RepoReady as a CI gate:
repoready . --min-score 80 --fail-on-findingsScan another project:
repoready ~/code/my-open-source-projectEmit machine-readable JSON:
repoready . --format jsonFail when the repo is below launch quality:
repoready . --min-score 85usage: repoready [-h] [--format {text,markdown,json}] [--output OUTPUT]
[--min-score MIN_SCORE] [--fail-on-findings]
[path]
Arguments:
path: Repository path to scan. Defaults to the current directory.--format: Output format:text,markdown, orjson.--output,-o: Write the report to a file.--min-score: Exit with status2when the percentage score is below this threshold.--fail-on-findings: Exit with status2when any failing checks are present.
RepoReady v0.1.0 intentionally has no configuration file. The default checks represent a practical launch baseline for most open-source projects.
Planned configuration support:
[tool.repoready]
min_score = 85
ignore_checks = ["large_files"]- Run before publishing a new GitHub repository.
- Add as a CI gate for AI-agent-generated starter projects.
- Generate a Markdown readiness report for maintainers.
- Audit old repos before relaunching them on Hacker News, Reddit, or Product Hunt.
- Teach junior developers what credible open-source packaging looks like.
from repoready import scan_repository
report = scan_repository(".")
print(report.percentage, report.grade)
for finding in report.findings:
print(finding.title, finding.severity, finding.message)- Language-specific check packs for Python, Node, Go, and Rust
- GitHub Actions annotation output
repoready fix --planfor safe, reviewable remediation suggestions- README quality examples and benchmark mode
- SARIF output for security/scanning platforms
- Optional LLM-assisted README critique without making API access mandatory
Contributions are welcome. Start with CONTRIBUTING.md, open a focused issue, and include before/after output for scoring changes.
MIT. See LICENSE.
Star history chart placeholder:
Add star-history.com chart after the repository is public.
No. It only catches obvious secret-looking strings and launch-readiness issues. Use dedicated security tools before serious production releases.
No. RepoReady v0.1.0 is deterministic and local-only.
No. The first version checks general open-source launch hygiene. Language-specific packs are on the roadmap.
Checklists are easy to ignore. RepoReady produces a score, CI exit code, and shareable report.