/hint

💡 A hinting engine for the web

Primary LanguageTypeScriptApache License 2.0Apache-2.0

webhint

Build Status Gitter FOSSA Status

Quick start user guide

webhint is a customizable linting tool that helps you improve your site's accessibility, speed, cross-browser compatibility, and more by checking your code for best practices and common errors.

It can be run from the command line (CLI), via a browser extension, as a VS Code extension, and from the online service.

To use it from the from the CLI you will need to install Node.js (v10.x or later) on your machine, and you can use npx to test it.

Testing with npx

Run the following command:

npx hint https://example.com

This will analyze https://example.com using the default configuration.

Installing webhint locally

Install webhint as a devDependency of your project:

npm install hint --save-dev

And then add a script task to your package.json:

{
    ...
    "scripts": {
        "webhint": "hint"
    }
}

And run it via:

npm run webhint -- http://localhost:8080

Or if you are using yarn you can skip the step to create a task and run directly:

yarn hint http://localhost:8080

To know more about webhint, how to configure it, etc. see the online user guide, or the local version for the most recent content.

Contributing to webhint

This project follows a monorepo pattern. That means that the code for all the webhint flavors (CLI, browser and VS Code extension, hints, formatters, etc.) are in here and are published as separate npm packages.

To build the project from the source you will need to install a recent version of node and yarn. Once you've done this run the following from the root of your cloned version:

yarn
yarn build

This can take a bit so please be patient.

To learn more about the internals of webhint, the structure of the project, how to create new hints, parsers, formatters, etc, take a look at the online contributor guide (or the local version).

Contributing to the browser and VS Code extensions

To learn about how to build one of the extensions please check the CONTRIBUTING.md files for each of these packages:

Code of Conduct

All projects in the webhintio organization follow this CoC which adheres to the OpenJS Foundation Code of Conduct.

Other important links

License

The code is available under the Apache 2.0 license.

FOSSA Status