grunt-module-graph
Grunt task to generate a JSON file with the dependency tree in ES6 module files.
Getting Started
This plugin requires Grunt ~0.4.0
If you haven't used Grunt before, be sure to check out
the Getting Started guide, as it explains
how to create a Gruntfile as well as
install and use Grunt plugins. Once you're familiar with that process, you may
install this plugin with this command:
npm install grunt-module-graph --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with
this line of JavaScript:
grunt.loadNpmTasks('grunt-module-graph');
The module graph task
Run this task with the grunt module-graph
command. This will generate a JSON
file with all the dependencies of each module specified as a task src
.
Task targets, files and options may be specified according to the grunt
Configuring tasks guide.
Usage example
Recommended
grunt.initConfig({
'module-graph': {
production: {
src: ['src/*.js'],
dest: 'dist/dependencies.json'
}
}
});
Running this task will generate a file that looks like this:
{
"module1": ["module2"]
}
Including named imports/exports
Alternatively you can get more information from all you source files by using
the includeBindings
option:
grunt.initConfig({
'module-graph': {
production: {
options: {
includeBindings: true
},
src: ['src/*.js'],
dest: 'dist/dependencies.json'
}
}
});
Chosing this option will generate an output file similar to:
{
"module1": {
"imports": {
"module2": ["someImport", "anotherImport"]
},
"exports": ["somethingExported"]
}
}
License
This software is free to use under the Yahoo Inc. BSD license.
See the LICENSE file for license text and copyright information.
Contribute
See the CONTRIBUTING file for info.