JSHint reporter based on Stylish with configurable colours


Reporter for JSHint.

A customisable reporter for that was inspired by jshint-stylish, but designed to be more readable by default on all platforms and provide configuration options so that users can customise the report for themselves. It can also report a summary of the code statistics that JSHint generates.

Install with npm:

npm install --save-dev jshint-summary

This module can be used as a JSHint reporter both directly via the command-line or as part of a build system using either Grunt or Gulp.

jshint --reporter node_modules\jshint-summary\lib\summary file.js


gulp.task('jshint', function () {
  return gulp.src(['app/*.js'])
    .pipe(jshint.reporter('jshint-summary', {
      verbose: true,
      reasonCol: 'cyan,bold'

If you are using a version of gulp-jshint before 1.5.5 your settings won't be passed to the reporter, which will use just the default settings.


  jshint: {
    options: {
      reporter: require('jshint-summary')
    target: ['file.js']

If you are using a version of grunt-contrib-jshint before 0.9.0 your settings won't be passed to the reporter, which will use just the default settings.

The default settings are:

var defaultOptions = {
  verbose: true,
  statistics: false,
  width: 120,
  wordWrap: false,
  fileCol: 'yellow,bold',
  positionCol: 'white',
  reasonCol: 'cyan,bold',
  codeCol: 'green',
  errorsCol: 'red,bold',
  okCol: 'green',
  labelCol: 'green',
  variableCol: 'white,bold'

Default true, if true then show the JSHint error code for each issue.

Defaults to false. If true then after reporting all issues found, the reporter will display various statistics JSHint generates - currently unused and implied global variables in each file.

Allows text to be wrapped at a particular width, the default values are false and 120 at the moment, as the implementation needs improving.

Each of these represents the colour of part of the output - fileCol is the current file name, positionCol, reasonCol and codeCol are the colours of the columns for each issue, errorsCol and okCol are the colours of the summary line, and labelCol and variableCol are the labels and variables that are listed if you are showing the extra statistics. You can set them to a string with any of the values 'white', 'grey', 'red', 'green', 'blue', 'yellow', 'cyan' or 'magenta', and optionally add 'bold' after a comma as well e.g.

    fileCol: 'red,bold',
    reasonCol: 'green,bold',
    codeCol: 'white'

BSD © James Skinner