The Interactive Dependency Visualizer & AI Conflict Solver
Project description
📦 KJ-DepViz: The Interactive Dependency Visualizer & AI Conflict Solver
Stop staring at pip freeze. Start visualizing your project.
kj-depviz is a next-generation tool that turns your requirements.txt, pyproject.toml, or uv.lock files into an interactive, explorable graph. But it doesn't just show you dependencies—it helps you fix them.
Powered by uv and your choice of LLM (Google Gemini, OpenAI, or OpenRouter), kj-depviz lets you simulate dependency changes, detect conflicts before they break your environment, and interactively resolve errors.
✨ Key Features
- 🎨 Interactive Graph Visualization: See exactly how your packages connect. Differentiate between Root projects, Direct dependencies, and Transitive (deep) dependencies instantly.
- 🚀 Powered by
uv: Uses the ultra-fastuvresolver to parse lock files and convert standard requirements near-instantly. - 🤖 Multi-LLM Conflict Analyst: Connect your API Key for Gemini, OpenAI, or OpenRouter. The AI acts as an elite DevOps engineer in your browser, analyzing dependency errors and explaining exactly how to fix them.
- 🧪 3-Way Analysis Modes:
- Static AI Analysis: Fast, theoretical conflict detection.
- UV Playground (AI): Safely simulate adding/modifying packages in a temporary sandbox. If it breaks, the AI explains the CLI output.
- Dry Run: Run raw UV simulations and see the exact terminal logs without AI intervention.
- 🧠 Smart CLI Resolver: If your dependencies are completely broken, the new terminal-based Interactive Surgeon steps in. Use AI Deep Diagnosis, pinpoint culprit packages, or relax strict versions right from your terminal via a beautiful TUI.
- 🔦 Deep Inspection: Click any node to see who uses it, what version is installed, and its dependency path.
🛠️ Installation
Install kj-depviz from PyPI using pip or uv:
pip install kj-depviz
Note:
kj-depvizrequires the uv tool to be installed on your system to perform resolutions and simulations.pip install uv
🚀 How to Use
1. Navigate to your Project
Open your terminal and go to any Python project folder that contains a requirements.txt, pyproject.toml, or uv.lock.
cd my-awesome-python-project
2. Run the Visualizer
Execute the analysis command:
kj-depviz analysis
If your dependencies are severely broken, the CLI will automatically launch the Smart Resolver TUI to help you fix them before starting the server!
3. Explore
The tool will start a local server. Open the link in your browser (usually http://127.0.0.1:8000).
🎮 The Dashboard Features
🕸️ The Graph View
- 🟡 Yellow Nodes: Your Root Project.
- 🟠 Orange Nodes: Direct Dependencies (things you installed explicitly).
- 🔵 Blue Nodes: Transitive Dependencies (things your packages rely on).
- Interactions: Drag nodes, zoom in/out, hover for versions, and double-click a node to copy its ID.
🤖 AI Conflict Analyst (The "Magic" Button)
Click the ✨ AI Analyst button in the bottom menu to open the AI Drawer.
- Connect Your LLM: Choose Gemini, OpenAI, or OpenRouter and paste your API Key (safely stored locally in your browser).
- Select an Action:
- Modify: See what happens if you upgrade/downgrade a package.
- Add: Test if adding a new package will cause math conflicts.
- Python Version: Check if your project survives a Python version bump.
- Choose your Mode: Static Analysis, Playground Simulation, or Dry Run.
- Analyze:
kj-depvizwill run the math or spin up a sandbox, attempt the change, and give you a beautiful markdown report of the results.
⚙️ Settings & Customization
- Toggle Theme: Switch between Dark 🌙 and Light ☀️ modes.
- Layouts: Rotate the graph (Top-Down or Left-Right).
- Search & Refresh: Instantly find packages, or hit refresh to live-reload the graph if you edit your
uv.lockin another window.
📦 Supported Formats
kj-depviz automatically detects:
- uv.lock & pyproject.toml (Native Mode - Best Experience)
- requirements.txt (Automatically converted to a secure, temporary uv sandbox for visualization)
👨💻 Author
Karan Jain (KJ) A passionate developer and AI-ML Engineer bridging the gap between complex dependency trees and developer experience.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
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 kj_depviz-0.2.0.tar.gz.
File metadata
- Download URL: kj_depviz-0.2.0.tar.gz
- Upload date:
- Size: 75.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfc44dcf9ca521f452dc9cebbf70d7dd6d0d49ff8872221ce9412c357f5785e7
|
|
| MD5 |
7479d1612470585001272cc00a146847
|
|
| BLAKE2b-256 |
e77b180f5945f00d61e190e41b6613ab37f5879b4f10ffbb2f74dc8a1d8404db
|
File details
Details for the file kj_depviz-0.2.0-py3-none-any.whl.
File metadata
- Download URL: kj_depviz-0.2.0-py3-none-any.whl
- Upload date:
- Size: 72.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa6ddb8129ba6ad7a7726057db8fa107ed6bee428963183465e530ca8a75771b
|
|
| MD5 |
b2e9a455c83086a5eb4debb0884d92e2
|
|
| BLAKE2b-256 |
eb9131655e2b7a611dac905bd7243067c625188d61c941d1743826854c42aaeb
|