posthtml-lint is a PostHTML plugin to lint static markup.
Currently supported rules include no-duplicate-ids, no-duplicate-tags, no-empty-tags and no-missing-attributes.
Before:
<head>
<title>Title</title>
<title>Title</title>
</head>
<body>
<a>Link</a>
</body>After:
# Output printed to the terminal
There are ...yarn add -D posthtml-lint
# OR
npm i posthtml-lintconst fs = require('fs');
const posthtml = require('posthtml');
const { lint } = require('posthtml-lint');
const html = fs.readFileSync('./index.html');
posthtml()
.use(lint())
.process(html)
.then(result => fs.writeFileSync('./after.html', result.html));| Name | Kind | Description |
|---|---|---|
noDuplicateIds |
boolean (default true) |
Disallow duplicate ids |
noDuplicateTags |
boolean (default true) |
Disallow duplicate occurrences of the html, head, title and body tags |
noEmptyTags |
boolean (default true) |
Disallow empty tags for tags that are not self-closing |
noMissingAttributes |
boolean (default true) |
Disallow tags with missing required attributes. |
See PostHTML Guidelines and contribution guide.