Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/darekkay/evaluatory
Web page evaluation with a focus on accessibility
https://github.com/darekkay/evaluatory
a11y accessibility audit monitoring
Last synced: about 1 month ago
JSON representation
Web page evaluation with a focus on accessibility
- Host: GitHub
- URL: https://github.com/darekkay/evaluatory
- Owner: darekkay
- License: mit
- Created: 2020-08-29T16:23:28.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2024-05-15T06:59:02.000Z (6 months ago)
- Last Synced: 2024-09-26T21:24:06.898Z (about 2 months ago)
- Topics: a11y, accessibility, audit, monitoring
- Language: JavaScript
- Homepage: https://darekkay.com/evaluatory/
- Size: 1.17 MB
- Stars: 97
- Watchers: 6
- Forks: 7
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Evaluatory
[![npm](https://img.shields.io/npm/v/evaluatory?style=flat-square)](https://www.npmjs.com/package/evaluatory)
[![Build](https://img.shields.io/github/actions/workflow/status/darekkay/evaluatory/ci.yml?branch=master&style=flat-square)](https://github.com/darekkay/evaluatory/actions/workflows/ci.yml)
[![license](https://img.shields.io/badge/license-MIT-green?style=flat-square)](https://github.com/darekkay/evaluatory/blob/master/LICENSE)Evaluatory is an [open-source](https://github.com/darekkay/evaluatory) tool for website validation. It is mainly a wrapper around [axe-core](https://github.com/dequelabs/axe-core) and [html-validate](https://html-validate.org), which test a website for accessibility and markup issues.
Evaluatory comes with some essential improvements:
- Run checks at **multiple device breakpoints** at the same time (e.g. mobile, tablet and desktop). Some accessibility issues appear only at a certain breakpoint.
- Emulate **dark mode**, disabled JavaScript, offline mode and more by using [custom Playwright options](https://playwright.dev/docs/api/class-browser#browser-new-context).
- Return a **visual HTML results page**, including page screenshots.
- Support for **sitemaps** to check all referenced web pages at once.This project uses a modular architecture, so in the long term it could become an alternative to tools like [webhint](https://webhint.io).
## Demo
Check out a demo results page at [https://darekkay.com/evaluatory/demo/](https://darekkay.com/evaluatory/demo/).
## Modules
- **base**: Custom built-in checks.
- **axe-core**: Checks for accessibility issues using [axe-core](https://github.com/dequelabs/axe-core).
- **html-validate**: Validates the HTML using [html-validate](https://html-validate.org).
- **screenshot**: Takes a screenshot of the page.## Quickstart
Run evaluatory with [default configuration](https://github.com/darekkay/evaluatory/blob/master/src/config.default.js) for a single URL:
```shell
npx evaluatory https://example.com
```## Installation
This tool requires Node.js version 12+.
Install globally:
```shell
$ yarn add -g evaluatory # Yarn
$ npm install -g evaluatory # Npm
```Or install as a local dependency:
```shell
$ yarn add evaluatory # Yarn
$ npm install --save evaluatory # Npm
```Or use without installing:
```shell
$ npx evaluatory
```## Usage
View program help:
```text
$ evaluatory --help
Usage: evaluatory [url] [options]Arguments:
[url] URLOptions:
-c, --config Configuration file path
-o, --output Output folder
--color-scheme Color scheme (light, dark, no-preference)
-m, --modules Modules to execute (comma-separated)
--no-open-results Don't open the results page after evaluation
--sitemap Sitemap URL
--verbose Verbose/debug mode
-h, --help Show help
-v, --version Show version number
```Run default configuration for a single URL:
```shell
$ evaluatory https://example.com
```Run default configuration for all URLs within a sitemap:
```shell
$ evaluatory --sitemap https://example.com/sitemap.xml
```Provide a custom configuration:
```shell
$ evaluatory -c config.json
```## Configuration
The configuration is a valid JSON5 file. See [config.example.json5](https://github.com/darekkay/evaluatory/blob/master/config.example.json5) for an example and [config.default.js](https://github.com/darekkay/evaluatory/blob/master/src/config.default.js) for available options (with defaults).
## License
This project and its contents are open source under the [MIT license](LICENSE).