Skip to content
Visualize package dependencies in your Dart project
Dart HTML CSS
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Add Support for Direct Dependencies Only (#28) Dec 29, 2019
doc updated sample Feb 16, 2014
example update example html Apr 24, 2019
lib Add Support for Direct Dependencies Only (#28) Dec 29, 2019
test Add Support for Direct Dependencies Only (#28) Dec 29, 2019
.gitignore ignore more things, pubspec cleanup Mar 23, 2018
.travis.yml
CHANGELOG.md Add Support for Direct Dependencies Only (#28) Dec 29, 2019
LICENSE change license Aug 28, 2014
README.md Add Support for Direct Dependencies Only (#28) Dec 29, 2019
analysis_options.yaml enable and fix a number of lints Mar 1, 2019
build.yaml Add pkg:peanut config May 22, 2019
dart_test.yaml add ensure build test Oct 20, 2018
peanut.yaml Update dartlang.org links to dart.dev (#21) Jun 16, 2019
pubspec.yaml Add Support for Direct Dependencies Only (#28) Dec 29, 2019

README.md

Visualize package dependencies in your Dart project

Build Status

Make sure you run pub get or pub upgrade in your target project directory.

Example

Here's an example of pubviz run on itself.

Installing

Activate pubviz.

$ pub global activate pubviz

Use

If you have configured your PATH correctly, you can run pubviz directly.

$ pubviz

Otherwise you can use the pub global command.

$ pub global run pubviz

Generate and open an html file for the package on the current path.

$ pubviz open

Should open your default browser to something like:

sample

Print GraphViz dot format to command line for a package on a specified path.

$ pubviz --format=dot print /path/to/http_package

You should see output something like:

digraph G {
  node [fontname=Helvetica];
  edge [fontname=Helvetica, fontcolor=gray];

  http [label="http
0.9.2+3",fontsize=18,style=bold,shape=box,margin="0.25,0.15"];
  http -> path [label=">=0.9.0 <2.0.0",penwidth=2];
  http -> stack_trace [label=">=0.9.1 <0.10.0",penwidth=2];
  http -> unittest [label=">=0.9.0 <0.10.0",penwidth=2,style=dashed];

  path [label="path
1.0.0",shape=box,margin="0.25,0.15",style=bold];

  stack_trace [label="stack_trace
0.9.1",shape=box,margin="0.25,0.15",style=bold];
  stack_trace -> path [label=">=1.0.0-rc.1 <2.0.0"];

  unittest [label="unittest
0.9.3",style=bold];
  unittest -> stack_trace [label=">=0.9.0 <0.10.0",color=gray];
}

pubviz -? prints help

$ pubviz -?
Usage: pubviz [<args>] <command> [<package path>]

Commands:
  open   Populate a temporary file with the content and open it.
  print  Print the output to stdout.

Arguments:
  -f, --format=<format>
            [dot]               Generate a GraphViz dot file
            [html] (default)    Wrap the GraphViz dot format in an HTML template which renders it.

  -i, --ignore-packages         A comma seperated list of packages to exclude in the output.
  -o, --[no-]flag-outdated      Check pub.dev for lasted packages and flag those that are outdated.
  -d, --direct-dependencies     Include only direct dependencies.
  -?, --help                    Print this help content.

If <package path> is omitted, the current directory is used.
You can’t perform that action at this time.