-
Notifications
You must be signed in to change notification settings - Fork 56
Goals
Marshall Lochbaum edited this page Jul 21, 2016
·
1 revision
Some old documentation about the goals of htmllint follows:
htmllint verifies that html files match certain specifications. This functionality is useful for almost anyone who writes html; a few more specific cases are given below.
- A beginner to html wishes to verify that his or her test webpages are correct and follow good practice. He will use JavaScript to call htmllinter.
- The leader of a programming team at a company wants to maintain and enforce a set of standards for the html documents the team writes. They use Grunt for automation of tasks at will.
- A hobbyist web programmer or freelancer wants to make sure his or her html pages follow current standards, using a highly customizable tool to account for his or her personal style decisions. He uses the command line to access npm modules for his work.
- Follow a specified format for naming rules.
- It should be possible to configure any rule.
- Configurable rules should be highly flexible - meaning everything we can provide, we should provide.
- The software will be compatible with Grunt and available via npm.
- Verification of basic HTML5 compliance (e.g. matched angle brackets and tags).
- Verification of essential good practice like providing a source for images and quoted attribute values.
- Verification of style issues like mixed tabs and spaces.
- Configurability: it should be possible to disable or modify any rule.
- Ease of configurability: the above should be simple, intuitive, and consistent.
- Completeness of output: Output should include full debugging information and give the rule violated as well as the column and line number.
- Ease of reading output: Output should be concise but intuitive.
- Performance: Should finish small pages (under 100 KB) in under 1 second.
- Extendability: Users should be able to add custom tests using javascript and without modifying the htmllint source.
Home (User manual)
- Architecture
- Rules versus Options
- Parser Output
- Rule Design
- The Knife (Utilities)
- Testing
- Feature Branch Tutorial
- Goals (Old)