https://github.com/cfpb/node-wcag
WCAG and Section 508 accessibility audits from the command line.
https://github.com/cfpb/node-wcag
wcag
Last synced: about 1 year ago
JSON representation
WCAG and Section 508 accessibility audits from the command line.
- Host: GitHub
- URL: https://github.com/cfpb/node-wcag
- Owner: cfpb
- License: cc0-1.0
- Created: 2015-04-30T07:44:00.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2017-06-06T16:35:49.000Z (almost 9 years ago)
- Last Synced: 2025-04-09T20:15:01.851Z (about 1 year ago)
- Topics: wcag
- Language: JavaScript
- Homepage:
- Size: 351 KB
- Stars: 32
- Watchers: 18
- Forks: 9
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# node-wcag [](http://travis-ci.org/cfpb/node-wcag) [](https://coveralls.io/r/cfpb/node-wcag)
WCAG and Section 508 accessibility audits from the command line or as a traditional node module.

## CLI installation
```sh
$ npm install wcag --global
```
## CLI usage
First, get a free [AChecker API ID](http://achecker.ca/register.php). Then:
```sh
$ wcag wikipedia.org --id=
```
Also works against localhost:
```sh
$ wcag localhost:8000 --id=
```
### Options
#### id
Type: `string`
Your free [AChecker API ID](http://achecker.ca).
```sh
$ wcag wikipedia.org --id=845cc0a8435cb0a766396a8c56399a43df0c843
```
If an `id` is not passed on the command line,
the tool will check for an `ACHECKER_ID` environment variable.
#### guide
Type: `string`
Choices: `508`, `WCAG1-A`, `WCAG1-AA`, `WCAG1-AAA`, `WCAG2-A`, `WCAG2-AA`, `WCAG2-AAA`, `BITV1`, `STANCA`
Default: `WCAG2-AA`
The accessbility guideline to validate against.
```sh
$ wcag wikipedia.org --id= --guide=508
$ wcag wikipedia.org --id= --guide=BITV1
```
## Module installation
```sh
$ npm install wcag
```
## Module usage
```javascript
var wcag = require('wcag');
var options = {
id: '69f6ea6a9e30b37c3d341d3b716df218f8942c0e',
uri: 'http://contolini.github.io/node-wcag/test/fixtures/whitehouse.html',
guide: 'WCAG2-AA'
};
wcag(options, function (error, data) {
if (error) {
console.error(error);
} else {
console.log(data);
}
});
```
The example will return [this output](data/output.json)
### Options
#### id
Type: `string`
Required: true
Your free [AChecker API ID](http://achecker.ca).
#### uri
Type: `string`
Required: true
URL for the page you want to validate
#### guide
Type: `string`
Required: false
Choices: `508`, `WCAG1-A`, `WCAG1-AA`, `WCAG1-AAA`, `WCAG2-A`, `WCAG2-AA`, `WCAG2-AAA`, `BITV1`, `STANCA`
Default: `WCAG2-AA`
The accessbility guideline to validate against.
## Contributing
Please read the [Contributing guidelines](CONTRIBUTING.md).
### Running node-wcag locally
To contribute code, fork this repo, clone it down to your machine and use npm link:
```sh
$ npm uninstall -g wcag
$ cd node-wcag
$ npm link
$ wcag whatever.com
```
### Running tests
We are using [nodeunit](https://github.com/caolan/nodeunit) to test.
To run tests, first install nodeunit and any dependencies via npm:
```sh
npm install
```
Run tests with:
```sh
npm test
```
## License
The project is in the public domain within the United States, and
copyright and related rights in the work worldwide are waived through
the [CC0 1.0 Universal public domain dedication](http://creativecommons.org/publicdomain/zero/1.0/).
All contributions to this project will be released under the CC0
dedication. By submitting a pull request, you are agreeing to comply
with this waiver of copyright interest.
Software source code previously released under an open source license and then modified by CFPB staff is considered a "joint work" (see 17 USC § 101); it is partially copyrighted, partially public domain, and as a whole is protected by the copyrights of the non-government authors and must be released according to the terms of the original open-source license.
For further details, please see: http://www.consumerfinance.gov/developers/sourcecodepolicy/