Skip to main content

Automated fork analysis and structural improvement for GitHub repositories

Project description

🏥 Fork Doctor

CI PyPI License: MIT Downloads

Automated fork analysis and structural improvement for GitHub repositories.

Fork Doctor forks a repo, analyzes what's missing (CI, security scanning, templates, etc.), and optionally creates a PR with all improvements applied.

Fork Doctor demo

✨ Features

  • 12 health checks — CI, CodeQL, Dependabot, pre-commit, issue/PR templates, CONTRIBUTING, release automation, devcontainers, README badges, license, benchmarks, SBOM
  • Language-aware — auto-detects Python, JavaScript, TypeScript, Go, Rust and generates appropriate configs
  • Dry-run mode — preview changes without committing
  • Rich output — beautiful tables, progress bars, colored terminal output
  • One command — fork, analyze, improve, and open a PR in seconds

📦 Installation

pip install fork-doctor

Or with uv:

uv tool install fork-doctor

🚀 Usage

Analyze a repo

fork-doctor analyze https://github.com/owner/repo

Apply improvements

fork-doctor improve https://github.com/owner/repo

Generate a report (no fork)

fork-doctor report https://github.com/owner/repo

Options

Flag Description
--dry-run Preview changes without committing or pushing
--language <lang> Override auto-detected language (python/javascript/typescript/go/rust)
--verbose Show detailed output

Programmatic usage

from fork_doctor import ForkDoctor

fd = ForkDoctor("https://github.com/owner/repo")
results = fd.analyze()
print(results)
# {'ci': True, 'codeql': False, 'dependabot': False, ...}

📋 What It Checks

# Check Description
1 CI GitHub Actions CI/CD pipeline
2 CodeQL CodeQL security scanning
3 Dependabot Automated dependency updates
4 Pre-commit Pre-commit hook configuration
5 Issue Templates Structured issue templates
6 PR Templates Pull request templates
7 Contributing CONTRIBUTING.md guide
8 Release Semantic versioning + release automation
9 DevContainer Dev container configuration
10 README Badges Badges and improved structure
11 License License file and compliance
12 Benchmark Performance benchmarking setup
13 SBOM Software Bill of Materials generation

🛠️ Requirements

  • Python 3.9+
  • gh CLI authenticated (gh auth login)
  • Git configured

🤝 Contributing

See CONTRIBUTING.md for guidelines. Bug reports and pull requests welcome!

📄 License

MIT

🔖 GitHub Topics

python github repository-health devops automation ci-cd security sbom

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fork_doctor-0.2.1.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fork_doctor-0.2.1-py3-none-any.whl (19.1 kB view details)

Uploaded Python 3

File details

Details for the file fork_doctor-0.2.1.tar.gz.

File metadata

  • Download URL: fork_doctor-0.2.1.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fork_doctor-0.2.1.tar.gz
Algorithm Hash digest
SHA256 5c607f823308a0d709476a372ab445898222ea214f159fa3f14ac88c3eb6f4a7
MD5 30f82500cbf56495345739b42e8c525f
BLAKE2b-256 75cc389027df6445bb6d4185999c3ff6e7e7f322440c1963df3ece324436e196

See more details on using hashes here.

File details

Details for the file fork_doctor-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: fork_doctor-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 19.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fork_doctor-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6434036107e5b9557365376e960a143db2f614802e024919f68cb0bb8a448e80
MD5 5de776d162d9c15d930ee2febba6acf9
BLAKE2b-256 39a78250420735e7a6f8a7e65feffb4a7f4a3a3891000643c12c60e6423fdeb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page