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.0.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.0-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fork_doctor-0.2.0.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.0.tar.gz
Algorithm Hash digest
SHA256 1a4df603ccb79edd73d9f8052225c6b4048fd8abca21880347b0b0ad917605b9
MD5 63f185a687bbd07a8c17ca1f6eec0394
BLAKE2b-256 0912cf2bf72eabe422f463795dc75a342f6c54fe2ea9521618fb6b10f4236a8b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fork_doctor-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 19.0 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dcfcfeddeba7040124a69fb6d19151b7e9688c3330267f4816109ae70392b72e
MD5 2f8558ba2799ac3aafb57f523b36b655
BLAKE2b-256 ea024a3962bd53302a1c01f65b0b2b64af147f90404d013a12835853db65d7de

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