Dependency Tree Viewer
Visualize, analyze, and export the dependency tree from your package.json, package-lock.json, or requirements.txt.
Click or drag package.json / requirements.txt here
Supports common dependency files
Dependency Insights
No valid data parsed yet. Validate an input file to see insights and the tree explorer.
About Dependency Tree Viewer
The Dependency Tree Viewer is a powerful utility that parses your project's dependency files (`package.json`, `package-lock.json`, or `requirements.txt`) and visualizes the full dependency graph. It surfaces hidden metrics, identifies potential security and stability issues (like unpinned versions or editable installs), and allows you to export your data for reporting—all natively within your browser.
How to Use
Real-World Examples
Analyzing a package-lock.json
Upload a deep `package-lock.json` file. The tool will parse the lockfile hierarchy, resolve parent-child relationships, and render a dynamic graph view that highlights exactly how deeply nested your dependencies go.
Auditing Python Requirements
Paste a `requirements.txt` file to instantly identify how many dependencies are unpinned (lacking `==` versions) or rely on `git+` URLs, which could introduce instability to production builds.
Best Practices
- Always use lockfiles (like `package-lock.json`) for visualization when possible, as they provide the true hierarchical graph rather than just top-level declarations.
- Ensure all production dependencies in `requirements.txt` are strictly pinned using `==` to guarantee reproducible builds.
- Avoid leaving editable installs (`-e`) in your dependency files before deploying to production environments.
Pro Tips
For extremely large projects, use the 'Tree View' instead of the 'Graph View'. The Tree View is highly virtualized and handles tens of thousands of dependencies instantly.
You can export the HTML report to share a standalone, styling-included summary of your dependencies with your team.
Frequently Asked Questions
Does it support yarn.lock or pnpm-lock.yaml?
Currently, it primarily focuses on package.json, package-lock.json (v2/v3), and Python requirements.txt.
Is my data secure?
Absolutely. All processing is done locally in your browser, and the exporting relies entirely on client-side Blob generation.
Why is the Graph View slow on my project?
Directed acyclic graphs (DAGs) require intense layout calculations. If your project has thousands of dependencies, the Graph View might take a moment to compute. Switch to the Tree View for instantaneous rendering of massive trees.
Security & Privacy
All parsing, validation, and visualization runs strictly natively inside your browser. No data, files, or proprietary code is ever transmitted to a server.