pubviz
A tool to visualize package dependencies and version constraints in your Dart project.
6.2.0
9.3K downloads/mo
#3039 most downloaded on pub.dev
kevmoo/pubviz
What this package is like to depend on
Last release 24 days ago
30 Jul 2026
Ships unpredictably
gaps range from 8 days to 2.6 years
Most releases are documented
notes for 43 of 59 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
59 releases · first in 2013
7 releases in the last 12 months
see the full history below
Release timeline
59 releases · Dec 2013 to Jul 2026Releases
latest 59-
6.2.030 Jul 2026Release notes
Open source →- Now supports
dart run pubviz@. - Faster local web serving via pre-gzipped embedded assets with HTTP
Content-Encoding: gzip. - Added native Mermaid diagram support:
- Added the
print-mermaidaction (-a print-mermaid) to print the
dependency graph as a Mermaid flowchart. - Added Mermaid export options ("Copy Mermaid" and "Save Mermaid") to the
web UI.
- Added the
- Require
sdk: ^3.12.0.
Release notes
Open source →- Now supports
dart run pubviz@. - Faster local web serving via pre-gzipped embedded assets with HTTP
Content-Encoding: gzip. - Added native Mermaid diagram support:
- Added the
print-mermaidaction (-a print-mermaid) to print the dependency graph as a Mermaid flowchart. - Added Mermaid export options ("Copy Mermaid" and "Save Mermaid") to the web UI.
- Added the
- Require
sdk: ^3.12.0.
- Now supports
-
6.2.0+130 Jul 2026 -
6.1.001 May 2026Release notes
Open source →- Added
--filteroption to CLI (that's also reflected in the web UI). - Added a
workspacefilter to only show packages in the workspace. - Use a worker so the UI doesn't freeze when rendering big graphs.
- MUCH smaller WebAssembly module.
- Added
--packageflag to open a specific published package. - Added a
hide-isolatedfilter to remove unpublished or root workspace
packages with no incoming dependencies. VizRootimplements a newHasPackagesmixin, mostly for testing.- Added
copyanddownloadbuttons to the web UI. - Added reset mechanism to the UI.
Release notes
Open source →- Added
--filteroption to CLI (that's also reflected in the web UI). - Added a
workspacefilter to only show packages in the workspace. - Use a worker so the UI doesn't freeze when rendering big graphs.
- MUCH smaller WebAssembly module.
- Added
--packageflag to open a specific published package. - Added a
hide-isolatedfilter to remove unpublished or root workspace packages with no incoming dependencies. VizRootimplements a newHasPackagesmixin, mostly for testing.- Added
copyanddownloadbuttons to the web UI. - Added reset mechanism to the UI.
- Added
-
6.0.003 Apr 2026Release notes
Open source →Breaking Changes
VizRoot.forDirectoryhas been replaced by thevizRootextension method on
Serviceto accommodate internal refactoring.vizRootis exposed directly
viapubviz.dart.- Reduced the mutable public API surface of
VizRootsignificantly; package
nodes and references are formally encapsulated, and filtering logic like
.filternow returns immutable clones ofVizRootrather than mutating
objects in-place. VizRoot.allDepshas been removed.- Removed the
--action createoption. - Removed the
--out-diroption.
Web UI Overhaul
--flag-outdatednow defaults to on.- Added a filter to hide
dev_dependencyedges and nodes. - Added a filter to only show paths to outdated dependencies.
- Assets are now served without creating a temp directory.
New Features
- Workspaces:
pubviznow automatically infers workspace context.
If run in a workspace root or member package, it natively visualizes the
layout for the entire workspace graph. The--workspaceflag is now optional
(--[no-]workspace).
Bug Fixes
- Workspaces: Included missing relational web edges for
dev_dependencies
belonging to workspace sub-members. They previously rendered as disconnected
nodes.
Release notes
Open source →Breaking Changes
VizRoot.forDirectoryhas been replaced by thevizRootextension method onServiceto accommodate internal refactoring.vizRootis exposed directly viapubviz.dart.- Reduced the mutable public API surface of
VizRootsignificantly; package nodes and references are formally encapsulated, and filtering logic like.filternow returns immutable clones ofVizRootrather than mutating objects in-place. VizRoot.allDepshas been removed.- Removed the
--action createoption. - Removed the
--out-diroption.
Web UI Overhaul
--flag-outdatednow defaults to on.- Added a filter to hide
dev_dependencyedges and nodes. - Added a filter to only show paths to outdated dependencies.
- Assets are now served without creating a temp directory.
New Features
- Workspaces:
pubviznow automatically infers workspace context. If run in a workspace root or member package, it natively visualizes the layout for the entire workspace graph. The--workspaceflag is now optional (--[no-]workspace).
Bug Fixes
- Workspaces: Included missing relational web edges for
dev_dependenciesbelonging to workspace sub-members. They previously rendered as disconnected nodes.
-
5.0.023 Mar 2026Release notes
Open source →Breaking Changes
- Replaced positional commands (
open,create,print) and the--format
option with a unified--action(-a) flag. - Default execution (
pubviz) now functions identically topubviz -a open. - Removed the
viz/dot.dartlibrary.toDotis now exposed via a an extension
onVizRoot
New Features
- Workspaces: Added the
--workspace(-w) flag to visualize all linked
packages within a Dart workspace. - Output Controls: Added the
--out-diroption to specify a target
destination for generated HTML and offline capabilities. - Serve Mode & Offline Support: Added the
serveaction which hosts the
web app locally viadhttpdwithout booting up a new browser window. The
openaction now uses this local server to bypass strictfile://CORS
restrictions internally. Additionally, the package now supports complete
offline functionality by bundling compiled Dart web application assets (JS
and WASM) directly inside the package.
Web UI Overhaul
- Completely redesigned the interactive web interface, adding a collapsible
sidebar for cleaner zooming and display control. - Added a
zkeyboard shortcut to easily toggle graph zoom capabilities. - Improved graph styling: Primary packages now utilize a distinct background
color to distinguish them easily.
Other Improvements & Fixes
- Modernized workspace discovery inside the codebase by utilizing structured
JSON data directly frompubtool invocations. - Hide version labels for primary node packages intentionally marked
publish_to: none. - Display a helpful warning message if
pubvizruns inside a workspace root
missing the--workspaceflag. - Fixed a bug causing wrong colors on hover interactions over outdated packages.
- Require
sdk: ^3.10.0.
Release notes
Open source →Breaking Changes
- Replaced positional commands (
open,create,print) and the--formatoption with a unified--action(-a) flag. - Default execution (
pubviz) now functions identically topubviz -a open. - Removed the
viz/dot.dartlibrary.toDotis now exposed via a an extension onVizRoot
New Features
- Workspaces: Added the
--workspace(-w) flag to visualize all linked packages within a Dart workspace. - Output Controls: Added the
--out-diroption to specify a target destination for generated HTML and offline capabilities. - Serve Mode & Offline Support: Added the
serveaction which hosts the web app locally viadhttpdwithout booting up a new browser window. Theopenaction now uses this local server to bypass strictfile://CORS restrictions internally. Additionally, the package now supports complete offline functionality by bundling compiled Dart web application assets (JS and WASM) directly inside the package.
Web UI Overhaul
- Completely redesigned the interactive web interface, adding a collapsible sidebar for cleaner zooming and display control.
- Added a
zkeyboard shortcut to easily toggle graph zoom capabilities. - Improved graph styling: Primary packages now utilize a distinct background color to distinguish them easily.
Other Improvements & Fixes
-
Modernized workspace discovery inside the codebase by utilizing structured JSON data directly from
pubtool invocations. -
Hide version labels for primary node packages intentionally marked
publish_to: none. -
Display a helpful warning message if
pubvizruns inside a workspace root missing the--workspaceflag. -
Fixed a bug causing wrong colors on hover interactions over outdated packages.
-
Require
sdk: ^3.10.0.
- Replaced positional commands (
-
4.1.113 Mar 2026 -
4.1.011 Mar 2026Release notes
Open source →- Added a printed output to
pubvizwhen using the-oflag that provides a
topologically sorted update order for outdated packages. - Require
sdk: ^3.9.0.
Release notes
Open source →- Added a printed output to
pubvizwhen using the-oflag that provides a topologically sorted update order for outdated packages. - Require
sdk: ^3.9.0.
- Added a printed output to
-
4.0.104 Dec 2024 -
4.0.025 Nov 2024 -
3.0.123 Oct 2024 -
3.0.021 Mar 2022 -
2.8.220 May 2020 -
2.8.2+102 Oct 2020 -
2.8.113 May 2020Release notes
Open source →- Copy valid package name parsing logic from
pubtool.- Packages with
.in their name are now allowed.
- Packages with
- Copy valid package name parsing logic from
-
2.8.008 May 2020Release notes
Open source →- Add new
--production-dependenciesflag to only output packages needed for production. - Updated
--direct-dependenciesbehavior to treatdev_dependenciesthe same asdependencies. - Don't include
sky_enginein output ever – it's justdart:ui. - Bumped min Dart SDK to
2.8.1. - Implementation: use new
pub outdatedcommand.
- Add new
-
2.7.011 Mar 2020 -
2.6.028 Jan 2020Release notes
Open source →- Add support for direct dependencies only with
--direct-dependencies(-d).
- Add support for direct dependencies only with
-
2.5.520 Oct 2019 -
2.5.420 Oct 2018 -
2.5.323 Jul 2018 -
2.5.221 Jun 2018 -
2.5.112 Jun 2018 -
2.5.007 Jun 2018Release notes
Open source →-
Use
pkg:pubspec_parsepackage. -
Stop using deprecated constants.
-
Improve handling of pre-release packages.
-
-
2.4.509 May 2018 -
2.4.421 Apr 2018Release notes
Open source →- Fixed code organization to eliminate warning during
pub global activate.
- Fixed code organization to eliminate warning during
-
2.4.321 Apr 2018 -
2.4.227 Dec 2017 -
2.4.121 Dec 2017Release notes
Open source →-
Using
nodesep=0.2on the graph to make it tighter. -
Hosted code
-
Much more robust handling of node clicks to add/remove.
-
Make it clear that nodes can be clicked by changing the cursor.
-
-
-
2.4.028 Nov 2017Release notes
Open source →-
Better error output if a subprocess fails.
-
Try to handle flutter packages.
-
-
2.3.1116 Aug 2017 -
2.3.1016 Aug 2017Release notes
Open source →-
Update
gviz. -
Support larger dependency graphs.
-
Update version of
viz.js. -
Use
viz-lite.js– smaller download.- Continue to host
vis.jsso we don't break existing installations.
- Continue to host
-
-
2.3.907 Jul 2017Release notes
Open source →-
Updated dependencies.
-
Fix case where we're pulling in a pre-release version that is after the latest stable version.
-
-
2.3.9+103 Aug 2017 -
2.3.819 May 2017Release notes
Open source →-
Send a descriptive user agent to the server.
-
Added retry logic for HTTP requests.
-
Sort the output.
-
-
2.3.720 Sep 2016 -
2.3.611 Feb 2016 -
2.3.522 Oct 2015 -
2.3.414 May 2015Release notes
Open source →-
Properly escape the latest version for outdated dependencies.
-
Add a reasonable tool-tip for the entire graph.
-
Don't show the root node as outdated.
-
-
2.3.313 May 2015 -
2.3.213 May 2015 -
2.3.105 May 2015 -
2.3.1+106 May 2015 -
2.3.003 Apr 2015 -
2.2.207 Mar 2015Nothing published for this version
-
2.2.2+107 Mar 2015Nothing published for this version
-
2.2.2+207 Mar 2015Nothing published for this version
-
2.2.128 Aug 2014Nothing published for this version
-
2.2.1+128 Aug 2014Nothing published for this version
-
2.2.1+229 Aug 2014Nothing published for this version
-
2.2.1+326 Sep 2014Nothing published for this version
-
2.2.1+429 Sep 2014Nothing published for this version
-
2.2.1+516 Oct 2014Nothing published for this version
-
2.2.1+616 Oct 2014Nothing published for this version
-
2.2.024 Jul 2014Nothing published for this version
-
2.1.017 Feb 2014Nothing published for this version
-
2.0.016 Feb 2014Nothing published for this version
-
1.3.016 Feb 2014Nothing published for this version
-
1.2.027 Dec 2013Nothing published for this version
-
1.1.0+127 Dec 2013Nothing published for this version