jidaikobo-shibata / A11yc

Licence: mit
Check accessibility of target page and generate accessibility evaluate page and policy.

Projects that are alternatives of or similar to A11yc

garn-validator
Create validations with ease
Stars: ✭ 42 (+223.08%)
Mutual labels:  checker, validator
Grunt Html
Grunt plugin for html validation
Stars: ✭ 165 (+1169.23%)
Mutual labels:  validator, checker
python-valid8
Yet another validation lib ;). Provides tools for general-purpose variable validation, function inputs/outputs validation as well as class fields validation. All entry points raise consistent ValidationError including all contextual details, with dynamic inheritance of ValueError/TypeError as appropriate.
Stars: ✭ 24 (+84.62%)
Mutual labels:  checker, validator
ngx-translate-lint
Simple CLI tools for check `ngx-translate` keys
Stars: ✭ 25 (+92.31%)
Mutual labels:  checker, validator
codeowners-validator
The GitHub CODEOWNERS file validator
Stars: ✭ 142 (+992.31%)
Mutual labels:  checker, validator
denetmen
useful micro check library for Crystal Language.
Stars: ✭ 23 (+76.92%)
Mutual labels:  checker, validator
jsonlint
Lightweight command-line tool for validating JSON
Stars: ✭ 27 (+107.69%)
Mutual labels:  checker, validator
Statusalert
Display Apple system-like self-hiding status alerts. It is well suited for notifying user without interrupting user flow in iOS-like way.
Stars: ✭ 809 (+6123.08%)
Mutual labels:  accessibility
Sass A11ycolor
🌈 Generate the nearest accessible color with Sass.
Stars: ✭ 24 (+84.62%)
Mutual labels:  accessibility
Pa11y Dashboard
Pa11y Dashboard is a web interface which helps you monitor the accessibility of your websites
Stars: ✭ 787 (+5953.85%)
Mutual labels:  accessibility
Clarity
Clarity is a scalable, accessible, customizable, open source design system built with web components. Works with any JavaScript framework, built for enterprises, and designed to be inclusive.
Stars: ✭ 6,398 (+49115.38%)
Mutual labels:  accessibility
Playbook Ios
📘A library for isolated developing UI components and automatically taking snapshots of them.
Stars: ✭ 830 (+6284.62%)
Mutual labels:  accessibility
Cti Stix Validator
OASIS TC Open Repository: Validator for STIX 2.0 JSON normative requirements and best practices
Stars: ✭ 24 (+84.62%)
Mutual labels:  validator
Go Tagexpr
An interesting go struct tag expression syntax for field validation, etc.
Stars: ✭ 807 (+6107.69%)
Mutual labels:  validator
Structured Acceptance Test
An open format definition for static analysis tools
Stars: ✭ 10 (-23.08%)
Mutual labels:  checker
Responsive
📱 A super lightweight HTML, Sass, CSS, and JavaScript framework for building responsive websites
Stars: ✭ 772 (+5838.46%)
Mutual labels:  accessibility
Osmnx Examples
Usage examples, demos, and tutorials for OSMnx.
Stars: ✭ 863 (+6538.46%)
Mutual labels:  accessibility
Ismailfine
A simple (but correct) library for validating email addresses. Supports mail addresses as defined in rfc5322 as well as the new Internationalized Mail Address standards (rfc653x). Based on https://github.com/jstedfast/EmailValidation
Stars: ✭ 9 (-30.77%)
Mutual labels:  validator
Itext7
iText 7 for Java represents the next level of SDKs for developers that want to take advantage of the benefits PDF can bring. Equipped with a better document engine, high and low-level programming capabilities and the ability to create, edit and enhance PDF documents, iText 7 can be a boon to nearly every workflow.
Stars: ✭ 913 (+6923.08%)
Mutual labels:  accessibility
Checkolotl
checkolotl is an account checker made in python3.6
Stars: ✭ 22 (+69.23%)
Mutual labels:  checker

a11yc

License: MIT Code Climate Scrutinizer Code Quality Build Status

screenshot

checklist - English checklist - Japanese

[en]

Introduction

Check accessibility of target page and generate accessibility evaluate page and policy.

See how it works. A11yc Accessibility Check Service WordPress Plugin jwp-a11y

deploy

Download zip and put it all in the folder a11yc or,

git clone [email protected]:jidaikobo-shibata/a11yc.git a11yc
a11yc/config/config.dist.php

to

a11yc/config/config.php

set A11YC_URL, A11YC_USERS, A11YC_LANG.

if you want to use SQLITE, create directory

a11yc/db

and create symlinks

ln -s a11yc/public/assets
ln -s a11yc/public/index.php
ln -s a11yc/public/post.php

mv a11yc/public/.htaccess.dist to document root and rename it.

mv a11yc/public/.htaccess.dist .htaccess

[ja]

紹介

JIS X 8341-3:2016 (WCAG 2.0) に基づいたアクセシビリティ報告書と方針を生成するためのウェブプリケーションです。

A11yc Accessibility Check Serviceで動いているものを確認できます。 WordPressプラグイン版 jwp-a11yもあります。

動作環境

PHP 5.6以上

設置方法

zipをダウンロードして、a11ycというフォルダにすべて入れるか、

git clone [email protected]:jidaikobo-shibata/a11yc.git a11yc

してください。

config/config.dist.php

を複製して、

config/config.php

を作り、環境設定してください。ほとんどの場合、A11YC_URL (ファイルを設置したアドレス) とA11YC_USERS (管理者情報) を設定したら大丈夫だと思います。

SQLITEを使う場合は、

a11yc/db

を設置してください。

フロントコントローラへのシンボリックリンクをはります。

ln -s a11yc/public/assets
ln -s a11yc/public/index.php

アクセシビリティのチェッカだけを使うのであれば、以下のシンボリックリンクを用意してください。

ln -s a11yc/public/post.php

ドキュメントルートに.htaccessを設置してください。

cp a11yc/public/.htaccess .htaccess

最終的に、

.htaccess
index.php
assets/
a11yc/

という状態になっていれば動作します。

権限等の問題でシンボリックリンクを張れない場合は、それぞれのphpをinclude()する方法でもいけます。しかし、この場合でも、assetsだけは、ドキュメントルートに複製する必要があります。

報告書作成画面にアクセスできるIPを制限したい場合はA11YC_APPROVED_IPSを書いてください。特にない場合は、define()しないようにしてください。

パスワードはconfig.dist.phpにもありますが、コマンドラインで

php -r "echo password_hash('password', CRYPT_BLOWFISH);\n"

というようにハッシュして保存してください。

使い方

最初に「設定」で、「目標とする適合レベル」を定めてください。

そのあと、「チェック」で対象のページを追加していって、チェックをしてゆきます。

報告書と方針

a11yc/public/report.php

を適当なファイル名に変更します。PHPがわかる方なら、適当にパスをいじって好きなところにおいてください。わからない場合でも、HTMLはいじっても大丈夫です。

ブラウザでこのファイルにアクセスすれば、状況に応じた報告書が生成されています。

CMSへの取り込み

WordPressのプラグインでは、投稿のたびに投稿内容のアクセシビリティチェックを行うようになっています。その手順を下記します。

A11ycでチェックするために記事のURLを取得します。WordPressの場合は、get_permalink($post->ID)のようなものです。一時的なチェックの場合は、サイトトップのURLを入れても動きます。

require_once ('/path/to/a11yc/main.php');
$url = get_permalink($post->ID);

HTMLのすべてをチェックするときには、headの中などのチェックも行いますが、投稿内容のみをチェックする場合は、不要なのでそのように設定します。

\A11yc\Validate::$is_partial = true;

Validateの中のリンクチェッカは処理に時間がかかるので、何らかの方法で、オンオフできるようにします。

\A11yc\Validate::$do_link_check = \A11yc\Input::post('jwp_a11y_link_check', false);

CSSのチェックも普段は不要かもしれません。

\A11yc\Validate::$do_css_check  = \A11yc\Input::post('jwp_a11y_css_check', false);

Validateクラスに検査対象のHTMLをセットします。以下はWordPressの例です。

\A11yc\Validate::html($url, apply_filters('the_content', $obj->post_content));

チェックの後、

  • \A11yc\Validate\Get::errors($url)にエラー
  • \A11yc\Validate\Get::errorCnts($url)にエラーの数
  • \A11yc\Validate\Get::logs($url)にチェック内容

が積まれているので、これを取得できます。

参考にしたものの一部

依存しているライブラリ

チェック

skipfishOWASP ZAPをもちいて脆弱性チェックをかけています。

謝辞

参考にさせていただいた資料および使わせてもらっているライブラリの開発者の皆さんに感謝します。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].