A dependency analyzer for ECMAScript projects that use es6 modules.
# npm install -g @migerh/js-module-walker
Invoke with --help
or -h
to get up to date information of the accepted input parameters:
Usage: js-module-walker [options] <files>
Options:
-h, --help output usage information
-o, --output [file] save output in file
--find-cycles detect and highlight cyclic dependencies
--ignore-packages ignore dependencies into packages from e.g. node modules
Examples:
$ js-module-walker ./path/to/your/js-project
$ js-module-walker --ignore-packages --output /tmp/dependencies.dot ./path/to/js-files
An analysis of this very project as of d8636e14 produces the graph below
$ js-module-walker index.js ./lib | dot -o./examples/js-module-walker-d8636e14.png -T png
An open source webapp for meeting minutes; version https://github.com/4minitz/4minitz/commit/215091a7d. The analysis is restricted to the client side modules.
$ js-module-walker --find-cycles --ignore-packages ./client/**/*.js ./lib/**/*.js ./imports/**/*.js | dot -Tpng -o./examples/4minitz-client-w-cycles-wo-packages-215091a7d.png
Graph: 4minitz dependency graph
This project is licensed under the terms of the MIT license. See the LICENSE file for more information.