0.0.3 • Published 10 years ago

grunt-module-graph v0.0.3

Weekly downloads
4
License
BSD-3-Clause
Repository
github
Last release
10 years ago

grunt-module-graph

Build Status Dependency Status NPM version

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.