grunt-filerev-assets

Record asset paths from grunt-filerev to a json file.

grunt-filerev-assets

Record asset paths from grunt-filerev to a json file.

This plugin requires Grunt ~0.4.1

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-filerev-assets --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-filerev-assets');

This task will take the summary from the grunt.filerev task and write it to disk. This is useful if you wish to load it into templates dynamically with, for example, an express middleware in this manner:

var assets = require('assets.json');
app.locals({
    assets: assets
})

Then, in your templates you can access the assets object.

In your project's Gruntfile, optionally add a section named filerev_assets to the data object passed into grunt.initConfig(). You can safely omit this if you want the default options to be used. Default options will cause grunt.filerev.summary to be written to assets.json in the root of your project.

Type: String Default value: 'assets.json'

A string value that is used as the filepath to write the contents of grunt.filerev.summary to disk.

Type: String Default value: ''

A string value that is used as a prefix to strip off the resulting paths in grunt.filerev.summary.

Type: String Default value: ''

A string value that is used as a prefix to append to all the resulting paths in grunt.filerev.summary.

Type: Boolean Default value: false

Format the resulting json file into a human-readable format.

If you do not set any options the default options are used to do write grunt.filerev.summary to assets.json.

In this example, custom options are used to strip public/ from the beginning of the paths and add /static/ so they can be used as urls in your templates.

grunt.initConfig({
  filerev_assets: {
    dist: {
      options: {
        dest: 'assets/assets.json',
        cwd: 'public/',
        prefix: '/static/'
      }
    }
  },
})

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

(Nothing yet)