Skip to main content

Generate LLM-optimized dependency analysis bundles from your codebase

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

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

pviz <scan_root> -o <output.json> [options]

Arguments:
  scan_root             Root directory of the project to analyze

Options:
  -o, --output          Output path for the bundle JSON (required)
  --clean               Nuke the artifact cache before running (recommended when switching repos)
  --store-root PATH     Override the sandbox directory (default: per-user .pviz_store)
  --mode classic|zones  Build mode (default: zones)
  --max-bytes N         Per-file size limit in bytes (default: 100MB)
  --allow-output-in-repo  Allow writing the bundle inside scan_root

Examples

# Analyze current directory
pviz . -o bundle.json --clean

# Analyze a specific project
pviz ~/projects/myapp -o ~/Desktop/myapp_bundle.json --clean

# Use a custom store root to keep artifacts organized
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 CLI (this package) SaaS (pvizgenerator.com)
Python YES YES
TypeScript YES YES
JavaScript YES YES
Java YES (partial — pure Python parser) YES (full resolution)
Kotlin NO YES
Go NO YES
Rust NO YES

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 hosted SaaS layer. It adds full Kotlin, Go, and Rust support, hosted bundle storage, bundle diffing across commits, and MCP delivery for direct LLM tool integration — without running anything locally.

Requirements

  • Python 3.10+
  • No other system dependencies for Python/TS/JS/partial-Java analysis

License

MIT — see LICENSE

Built by Michael McClellan

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

pviz_parser-0.1.8.tar.gz (376.6 kB view details)

Uploaded Source

Built Distribution

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

pviz_parser-0.1.8-py3-none-any.whl (445.8 kB view details)

Uploaded Python 3

File details

Details for the file pviz_parser-0.1.8.tar.gz.

File metadata

  • Download URL: pviz_parser-0.1.8.tar.gz
  • Upload date:
  • Size: 376.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for pviz_parser-0.1.8.tar.gz
Algorithm Hash digest
SHA256 de555d5138245fc42146ac32d6a26d004a048367607445608a682977b434a6ac
MD5 e4b12e13cc28e155e00b51a09eb658b6
BLAKE2b-256 8bd27567cd308b646f83bf289c14de0c3675a126ef8c75376ffcf987a4f0b65c

See more details on using hashes here.

File details

Details for the file pviz_parser-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: pviz_parser-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 445.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for pviz_parser-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 fe4f683a57d97d71c3527d1c9a362b39fc5acdc08ed7fc15f891d85b1c81e802
MD5 0f8c0d2cda1c17bbeea3b96f774e3c55
BLAKE2b-256 c7adff1a11195b4afd03e4b285e4c265b95e4021972294a0ff60cedb918b9248

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