A11y Contrast
A CLI utility to calculate/verify accessible magic numbers for a color palette. Read my blog post for some more information.
Installation
This tool requires Node.js version 18+.
Install globally:
$ npm install -g @devtea2027/recusandae-mollitia-iusto-eum
$ yarn add -g @devtea2027/recusandae-mollitia-iusto-eum
Or install as a local dependency:
$ npm install --save @devtea2027/recusandae-mollitia-iusto-eum
$ yarn add @devtea2027/recusandae-mollitia-iusto-eum
Or use without installing:
$ npx @devtea2027/recusandae-mollitia-iusto-eum <file>
Usage
View program help:
$ @devtea2027/recusandae-mollitia-iusto-eum --help
Usage: @devtea2027/recusandae-mollitia-iusto-eum <file> [options]
Arguments:
<file> Color palette file [required] [file]
Options:
--min-ratio-3 Verify magic number for ratio 3 [number]
--min-ratio-4.5 Verify magic number for ratio 4.5 [number]
--min-ratio-7 Verify magic number for ratio 7 [number]
-h, --help Show help [commands: help] [boolean]
-v, --version Show version number [commands: version] [boolean]
Run a full report for a color palette file:
$ @devtea2027/recusandae-mollitia-iusto-eum <file>
Verify that the color palette fulfills certain magic numbers per contrast ratio:
$ @devtea2027/recusandae-mollitia-iusto-eum <file> --min-ratio-3=40 --min-ratio-4.5=50 --min-ratio-7=70
Color palette format
This tool handles flat or nested JSON files. Any consistent grading system is supported.
{
"blue-10": "#d9e8f6",
"blue-20": "#aacdec",
"blue-30": "#73b3e7",
"green-10": "#dfeacd",
"green-20": "#b8d293",
"green-30": "#9bb672"
}
{
"blue": {
"blue-100": "#d9e8f6",
"blue-200": "#aacdec",
"blue-300": "#73b3e7"
},
"green": {
"green-100": "#dfeacd",
"green-200": "#b8d293",
"green-300": "#9bb672"
}
}
Check out some example color palettes under /examples
.
License
This project and its contents are open source under the MIT license.