Skip to main content

Instantly visualize any Python codebase's dependency graph.

Project description

Blastmap

See your codebase the way your compiler does.

Blastmap maps any Python repository into an interactive dependency graph — every file, every import, every connection — in a single command. Built for engineers who need to understand large codebases fast.


Install

pip install blastmap

Usage

Scan the current directory:

blastmap scan

Scan any repo:

blastmap scan /path/to/repo

Custom output file:

blastmap scan /path/to/repo --output my-graph.html

Then open the generated HTML file in your browser.


Features

  • Zero config — point it at any Python repo and it works
  • Handles both standard and src/ layout repos automatically
  • Respects .gitignore — no noise from virtual environments or build artifacts
  • Interactive graph — zoom, pan, drag nodes
  • Click any node to see its parents and children instantly
  • Search bar — find any file or module without hunting through the graph
  • Nodes sized by dependents — the most critical files are visually largest
  • Custom tooltips — filename, path, and dependent count on hover

How It Works

Blastmap uses Python's built-in ast module to parse every .py file in your repo and extract import relationships. It then builds a directed graph with networkx and renders it as a self-contained interactive HTML file using pyvis.

No servers. No accounts. No data leaves your machine.


Examples

Repo Files Edges Most Critical File
Flask 84 71 flask/__init__.py (44 dependents)
Scrapy 446 1,794 scrapy/__init__.py (191 dependents)
Django 2,911 7,585 django/test/__init__.py (790 dependents)

Roadmap

  • JavaScript / TypeScript support
  • Java and Go support
  • Blast-radius command — highlight everything affected by a given file
  • VS Code extension

License

MIT

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

blastmap-0.1.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

blastmap-0.1.0-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file blastmap-0.1.0.tar.gz.

File metadata

  • Download URL: blastmap-0.1.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for blastmap-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a9761a0c054b5d8d977654d73f9b223ce2f8339207e6b262d8e7766e3bc167d3
MD5 1f5898771f89537329b13294257956e9
BLAKE2b-256 58073325b83a1b55865d3324947d7cb45d4b7962f93f64ae4755fa88ed6ef41d

See more details on using hashes here.

File details

Details for the file blastmap-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: blastmap-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for blastmap-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9b0ab6443b793f586ca673f96dd32d9927c565c5b206f86313d51698cc260f22
MD5 c12ed8dc642fef82d6ae6c1e184f4824
BLAKE2b-256 495ffc7d52d80c3e21c782609dab0156e01bad05d6b1645599fc10b9a9186f61

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