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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file blastmap-0.1.2.tar.gz.
File metadata
- Download URL: blastmap-0.1.2.tar.gz
- Upload date:
- Size: 9.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3783abaf6b779a3d721b575dec8bb956a4963fdf57b5aeb9dc0f735eb85c3bb
|
|
| MD5 |
c6bb8690bfc94c93ac3b7ae3c42ef808
|
|
| BLAKE2b-256 |
f6d41b19b64e546833d1c5b6459233ed876c3cb75a1d0e9479089877e3203ad1
|
File details
Details for the file blastmap-0.1.2-py3-none-any.whl.
File metadata
- Download URL: blastmap-0.1.2-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ac79410dc5de784ae051441e9f8c778d63c24b64fc535c2ac491ec8f3ebd398
|
|
| MD5 |
b9151d0ff6702ce2e7502836f26b1aa0
|
|
| BLAKE2b-256 |
1430551b043a52b4b2ce571608bca22f8ce946947e59c3fac0213c8977d1bde7
|