metalsmith-html-validator
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

metalsmith-html-validator

Go to the latest release page on npm License: MIT Supported Node.js version: >=8.3.0 Type Definitions: TypeScript bundle size Dependencies Status Build Status Maintainability Status

Metalsmith plugin for HTML validation, using the Nu Html Checker (v.Nu).

Requirements

This plugin requires Java 8 or above. If the java command does not exist on the system running this plugin, Java 8+ must be installed.

Install

npm install metalsmith-html-validator

CLI Usage

Install via npm and then add the metalsmith-html-validator key to your metalsmith.json plugin, like so:

{
  "plugins": {
    "metalsmith-html-validator": true
  }
}

If you need to specify an options, set the options to the value of the metalsmith-html-validator key.

{
  "plugins": {
    "metalsmith-html-validator": {
      "pattern": "**/*.html"
    }
  }
}

See Metalsmith CLI for more details.

Javascript Usage

The simplest use is to omit the option.

const htmlValidator = require('metalsmith-html-validator');
 
metalsmith
  .use(htmlValidator());

If you need to specify an options, set the options value.

const htmlValidator = require('metalsmith-html-validator');
 
metalsmith
  .use(htmlValidator({
    pattern: '**/*.html',
  }));

If you want to use the files variable or the default options value, you can specify the callback function that generates the options.

const htmlValidator = require('metalsmith-html-validator');
 
metalsmith
  .use(htmlValidator(
    (files, metalsmith, defaultOptions) => {
      return {
        pattern: [...defaultOptions.pattern, '!**/_*', '!**/_*/**'],
      };
    }
  ));

TypeScript Usage

For compatibility with the Metalsmith CLI, this package exports single function in CommonJS style.
When using with TypeScript, it is better to use the import = require() statement.

import htmlValidator = require('metalsmith-html-validator');
 
metalsmith
  .use(htmlValidator());

Options

The default value for options are defined like this:

const chalk = require('chalk'); // chalk@3.0.0
 
{
  pattern: ['**/*.{html,htm}'],
  logger: console.error,
  chalk: chalk.stderr,
}

pattern

Specifies the Glob pattern that matches the file to be validated.
Specify a glob expression string or an array of strings as the pattern.
Pattern are verified using multimatch v4.0.0.

Default value (source):

['**/*.{html,htm}']

Type definition (source):

string | string[]

logger

Specify a logger function to process the validator result.

Default value (source):

console.error

Type definition (source):

(str: string) => void

chalk

Specifies the chalk instance that colors the validator result.
When false or null is specified, coloring is disabled.

Default value (source):

const chalk = require('chalk'); // chalk@3.0.0
 
chalk.stderr

Type definition (source):

// import chalk = require('chalk'); // chalk@3.0.0
 
chalk.Chalk | false | null

Debug mode

This plugin supports debugging output.
To enable, use the following command when running your build script:

DEBUG=metalsmith-html-validator,metalsmith-html-validator:* node my-website-build.js

For more details, please check the description of debug v4.1.1.

Tests

To run the test suite, first install the dependencies, then run npm test:

npm install
npm test

Contributing

see CONTRIBUTING.md

Related

Package Sidebar

Install

npm i metalsmith-html-validator

Weekly Downloads

2

Version

1.1.1

License

MIT

Unpacked Size

55.4 kB

Total Files

30

Last publish

Collaborators

  • sounisi5011