Socket
Book a DemoInstallSign in
Socket

w3c-html-validator

Package Overview
Dependencies
Maintainers
1
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

w3c-html-validator

A package for testing HTML files or URLs against the W3C validator (written in TypeScript)

Source
npmnpm
Version
0.7.3
Version published
Weekly downloads
1.4K
-16.1%
Maintainers
1
Weekly downloads
 
Created
Source

W3C HTML Validator

<img src=https://centerkey.com/graphics/center-key-logo.svg align=right width=200 alt=logo>

A package for testing HTML files or URLs against the W3C validator

License:MIT npm Vulnerabilities Build

1) Setup

Install

Install package for node:

$ npm install --save-dev w3c-html-validator

Import

Import into your application:

import { w3cHtmlValidator } from 'w3c-html-validator';

2) Usage

Call the validate() function:

const options = { filename: 'docs/index.html' };
w3cHtmlValidator.validate(options).then(console.log);

To display formatted output, replace console.log with w3cHtmlValidator.reporter:

w3cHtmlValidator.validate(options).then(w3cHtmlValidator.reporter);

To see some example validation results, run the commands:

$ cd w3c-html-validator
$ node examples.js

<img src=https://raw.githubusercontent.com/center-key/w3c-html-validator/main/examples.png width=800 alt=screenshot>

3) Options

validate()

Name (key)TypeDefaultDescription
htmlstringnullHTML string to validate.
filenamestringnullHTML file to validate.
websitestringnullURL of website to validate.
checkUrlstring'https://validator.w3.org/nu/'W3C validation API endpoint.
ignoreLevel'info' or 'warning'nullSkip unwanted messages.*
output'json' or 'html''json'Get results as an array or as a web page.
*The ignoreLevel option only works for 'json' output.  Leven 'warning' also skips 'info'.

reporter()

Name (key)TypeDefaultDescription
maxMessageLennumbernullTrim validation messages to not exceed a maximum length.
titlestringnullOverride display title (useful for naming HTML string inputs).

4) TypeScript Declarations

The TypeScript Declaration File file is w3c-html-validator.d.ts in the dist folder.

The output of the w3cHtmlValidator.validate(options: ValidatorOptions) function is a promise for ValidatorResults object:

type ValidatorResults = {
   validates: boolean,
   mode:      'html' | 'filename' | 'website';
   html:      string | null,
   filename:  string | null,
   website:   string | null,
   output:    'json' | 'html',
   status:    number,
   messages:  ValidatorResultsMessage[] | null,  //for 'json' output
   display:   string | null,                     //for 'html' output
   };

5) Mocha Example

import assert from 'assert';
import { w3cHtmlValidator } from 'w3c-html-validator';

describe('Home page', () => {
   it('validates', (done) => {
      const handleResults = (results) => {
         assert(results.status === 200, 'Request succeeded');
         assert(results.validates, 'Home page validates');
         done();
         };
      const options = { filename: 'docs/index.html' };
      w3cHtmlValidator.validate(options).then(handleResults);
      });
   });

6) Command Line

$ npm install --save-dev w3c-html-validator
$ w3c-html-validator docs/index.html

or as an npm script in package.json:

   "scripts": {
      "validate": "w3c-html-validator docs/index.html",
   },

Note: This feature is currently just experimental.

7) Gulp Task

This library is available as a Gulp plugin:
https://github.com/center-key/gulp-w3c-html-validator

Keywords

html

FAQs

Package last updated on 23 Jun 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts