node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »


grunt-class-id-minifier Build Status

gruntplugin for grunt-class-id-minifier

Getting Started

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-class-id-minifier --save-dev

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


The "class-id-minifier" task


In your project's Gruntfile, add a section named class-id-minifier to the data object passed into grunt.initConfig().

      class-id-minifier: {
        options: {
          // Task-specific options go here. 
        your_target: {
          // Target-specific file lists and/or options go here. 



Type: String Required.

A string value that is path of generated js map file.


Type: String Required.

A string value that is path of generated js dev map file.


Type: String Optional.

A string value that is moduleName of generated js map file.


Type: Function(name,type) Optional.

A function to filter whether name appears in js map file.

Type: String

original name of class or id

Type: Boolean

whether name is html id


Type: Boolean

whether name is html className


files of html and css files to be minified

Usage Examples

In this example, class name and id of html in tests/fixtures will be minified, mapped scss, mapped js and modified html will be saved to tests/expect.

note: id and class name which starts with J_ will not be modified.

      class-id-minifier: {
        simple: {
            options: {
                jsMapFile: 'tmp/simple/map.js',
                jsMapDevFile: 'tmp/simple/',
                minifyFilter: function (k, type) {
                    // type.className 
                    // J_ ignored in minified html 
                    return /^J_/.test(k) ? false : true;
                jsMapFilter: function (k, type) {
                    // className ignored in js map 
                    return !!;
            files: [
                    expand: true,
                    cwd: 'test/fixtures/simple/',
                    src: '*.{html,css}',
                    dest: 'tmp/simple/'


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.

Release History


  • remove scssMapFilter
  • support minify css file


  • support jsMapFilter/scssMapFilter/minifyFilter


  • initila commit