grunt-parker

Grunt plugin for parker, a stylesheet analysis tool.

Usage no npm install needed!

<script type="module">
  import gruntParker from 'https://cdn.skypack.dev/grunt-parker';
</script>

README

grunt-parker

NPM version Dependency Status Downloads counter

Grunt plugin for parker, a stylesheet analysis tool.


Getting Started

This plugin requires Grunt ~0.4.5

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-parker --save-dev

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

grunt.loadNpmTasks('grunt-parker');

The "parker" task

Overview

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

grunt.initConfig({
  parker: {
    options: {
      // Task-specific options go here.
    },
    your_target: {
      // Target-specific file lists and/or options go here.
    },
  },
});

Options

options.metrics

Type: Array (metric names)
Default value: false

An array of the metrics to use in parker.
By default, grunt-parker use all available metrics.

By now, grunt-parker accepts the following metrics :

  • TotalStylesheets
  • TotalStylesheetSize
  • TotalRules
  • TotalSelectors
  • TotalIdentifiers
  • TotalDeclarations
  • SelectorsPerRule
  • IdentifiersPerSelector
  • SpecificityPerSelector
  • TopSelectorSpecificity
  • TopSelectorSpecificitySelector
  • TotalIdSelectors
  • TotalUniqueColours
  • UniqueColours
  • TotalImportantKeywords
  • TotalMediaQueries
  • MediaQueries

options.file

Type: String (file path)
Default value: false

A file path to log the reported results, in markdown format.
If false is given, the file will not be written.
Note: using a file as output will silence the console output.

options.title

Type: String
Default value: Grunt Parker Report

When logging the reported results to file, use this as title of the markdown document.

options.colophon

Type: Boolean
Default value: false

When logging the reported results to file, use colophon and timestamp as footer of the markdown document.

options.usePackage

Type: Boolean
Default value: false

When enabled, if you launch your grunt-packer task from a folder containing a package.json file (like 99% of use cases), grunt-packer will use some of the package's informations to make the report file a little more informative (use project's name as title, show version and description, links to the homepage…).

Usage Examples

Default Options

In this example, the default options are used to shows the results of the parker analysis for the given files.

grunt.initConfig({
  parker: {
    options: {},
    src: [
      'test/*.css'
    ],
  },
});

Custom Options

In this example, custom options are used to shows the results of the parker analysis for the given files, with only the four given metrics, and write the results on a file named report.md

grunt.initConfig({
  parker: {
    options: {
      metrics: [
        "TotalRules",
        "TotalSelectors",
        "TotalIdentifiers",
        "TotalDeclarations"
      ],
      file: "report.md",
      colophon: true,
      usePackage: true
    },
    src: [
      'test/*.css'
    ]
  }
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style.
Lint and test your code using Grunt.

Release History

  • 2016/04/07 : v0.2.0
  • 2016/02/05 : v0.1.4
  • 2014/12/14 : v0.1.3
  • 2014/09/16 : v0.1.2
  • 2014/09/14 : v0.1.0