GitHub - mikebmac86/pviz-parser: Analyze your codebase's dependency graph and export a structured bundle — nodes, edges, metrics, and cycle detection across multiple languages · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
mikebmac86
pviz-parser
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>9 Commits<br>9 Commits
adapters
adapters
analyzer
analyzer
analyzer_store
analyzer_store
contracts
contracts
core
core
diagnostics
diagnostics
i_o
i_o
pviz_parser
pviz_parser
.gitignore
.gitignore
LICENSE
LICENSE
README.md
README.md
__init__.py
__init__.py
pyproject.toml
pyproject.toml
View all files
Repository files navigation
pviz-parser
Generate LLM-optimized dependency analysis bundles from your codebase.
pviz-parser analyzes your project's dependency graph and produces a structured JSON bundle designed to fit inside an LLM context window. Instead of pasting files one by one, you give your LLM a complete picture of how your codebase is wired — nodes, edges, import relationships, cycle detection, and per-file metrics — in a single compressed artifact.
Installation
pip install pviz-parser
Quickstart
pviz . -o bundle.json --clean
That's it. Point pviz at your project root, specify an output path, and get a bundle ready to drop into Claude, ChatGPT, or any LLM that accepts file uploads or large context.
Usage
-o [options]
Arguments:<br>scan_root Root directory of the project to analyze
Options:<br>-o, --output Output path for the bundle JSON (required)<br>--clean Nuke the artifact cache before running (recommended when switching repos)<br>--store-root PATH Override the sandbox directory (default: per-user .pviz_store)<br>--mode classic|zones Build mode (default: zones)<br>--max-bytes N Per-file size limit in bytes (default: 100MB)<br>--allow-output-in-repo Allow writing the bundle inside scan_root">pviz -o [options]
Arguments:<br>scan_root Root directory of the project to analyze
Options:<br>-o, --output Output path for the bundle JSON (required)<br>--clean Nuke the artifact cache before running (recommended when switching repos)<br>--store-root PATH Override the sandbox directory (default: per-user .pviz_store)<br>--mode classic|zones Build mode (default: zones)<br>--max-bytes N Per-file size limit in bytes (default: 100MB)<br>--allow-output-in-repo Allow writing the bundle inside scan_root
Examples
# Analyze current directory<br>pviz . -o bundle.json --clean
# Analyze a specific project<br>pviz ~/projects/myapp -o ~/Desktop/myapp_bundle.json --clean
# Use a custom store root to keep artifacts organized<br>pviz . -o bundle.json --store-root /tmp/pviz --clean
What's in the bundle
The output is a structured JSON artifact with:
Nodes — one per source file, with LOC, SLOC, import/exporter counts, SCC membership, symbols, and language
Edges — directed import relationships between files
Dependency metrics — which files are most imported, which import the most, hotspots
Cycle detection — strongly connected components (SCCs) flagged at the node level
Discovery manifest — full file inventory with language breakdown
Folder index — per-file import surface and resolution data
Summary — counts, parse status, edge stats, crosstalk candidates
A compressed format is also generated alongside the standard bundle (.compressed.json), typically 55–65% smaller, optimized for tight context windows.
Language support
Language<br>CLI (this package)<br>SaaS (pvizgenerator.com)
Python
TypeScript
JavaScript
Java<br>✅ (partial — pure Python parser)<br>✅ (full resolution)
Kotlin
Go
Rust
Kotlin, Go, and Rust analysis requires compiled binary dependencies that are part of the hosted SaaS only. Polyglot repos with multiple supported languages are handled automatically — the bundle merges all detected languages into a single artifact.
CLI vs SaaS
pviz-parser is the open source CLI. It runs locally, produces bundles you own, and supports Python, TypeScript, JavaScript, and partial resolution for Java out of the box.
pvizgenerator.com is the...