Skip to main content

AI-powered Git patch assistant with HTML report generation.

Project description

PatchMind Banner

🧠 PatchMind

Run PatchMind Report Publish to PyPI PyPI - Version License: Apache-2.0 GitHub stars


PatchMind is a modular Python CLI tool for Git repositories that generates smart, visual HTML reports.
It captures patch-level diffs, tree views, file history timelines, risk scoring, and more — all locally.

No cloud. No bloat. Just clean insight.


🚀 Key Features

  • 🔍 Detects file-level and line-level changes across commits
  • 🌳 Tree-based visualization of modified paths
  • 📅 File timeline view with authorship and metadata
  • ⚠️ Risk and impact scoring per file
  • 👤 Inline blame summaries
  • 📄 Clean, standalone HTML output
  • ⚙️ Fully CLI-driven — automate in CI/CD

📸 Sample Output

PatchMind HTML Report Sample


📦 Installation

Install from PyPI:

pip install patchmind

Or install manually:

git clone https://github.com/Darkstar420/patchmind.git
cd patchmind
pip install -r requirements.txt

🧪 Usage

Generate an HTML report from the root of any Git repo:

python cli/main.py --report

The output will be saved as patchmind_report.html in the project root.


📂 Project Layout

patchmind/
├── cli/               # CLI entrypoint
├── core/              # Core analysis engine
├── tests/             # Unit tests
├── docs/              # Sample reports and images
├── config.yaml        # Config (optional)
├── requirements.txt
└── README.md

🧪 Run Tests

pytest -q

Unit tests live in tests/ and validate key functionality, including mock Git data and report rendering.


💡 Why Use PatchMind?

✅ No setup required – run it instantly ✅ See what's changing, where, and why ✅ Stay ahead of technical debt ✅ Built for devs who want insight — not overhead


📄 License

Licensed under the Apache 2.0 License — free to use, modify, and distribute.


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

patchmind-0.1.3.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

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

patchmind-0.1.3-py3-none-any.whl (16.3 kB view details)

Uploaded Python 3

File details

Details for the file patchmind-0.1.3.tar.gz.

File metadata

  • Download URL: patchmind-0.1.3.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for patchmind-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a48f6edabc1971cc9631b9595285e3a66b70d85f41d6879ac10b01d3ab988215
MD5 9a0f9bb9d33c3b92b229af66cd70ac9c
BLAKE2b-256 33801fdc8c8ff462a64c1fdd4d9dd490c6d92cb7b245aef953a5eaba56911167

See more details on using hashes here.

Provenance

The following attestation bundles were made for patchmind-0.1.3.tar.gz:

Publisher: publish.yml on Darkstar420/patchmind

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file patchmind-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: patchmind-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 16.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for patchmind-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 19007eb6b28805701888933d2280ac71b16e9be5c4f14234faf7fbe45e960b78
MD5 14f241393cd784a88d4f459f3b3009bd
BLAKE2b-256 854595d242cfd3a9af03e2ada17a20017810ed5486b4f6d79cf8b08455855341

See more details on using hashes here.

Provenance

The following attestation bundles were made for patchmind-0.1.3-py3-none-any.whl:

Publisher: publish.yml on Darkstar420/patchmind

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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