All Projects → jonathanlinat → accessible-name-automation-proof-of-concept

jonathanlinat / accessible-name-automation-proof-of-concept

Licence: CC0-1.0 license
This is an experiment based on Accessibility Object Model (AOM). It tries to demonstrate that it is theoretically possible (in a certain way) to predict what the screen reader will say by focusing on semantic and non semantic elements with a bit of automated testing, thus reducing the need for manual testing.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to accessible-name-automation-proof-of-concept

Tanaguru
Automated accessibility (a11y) testing tool, with emphasis on reliablity and automation
Stars: ✭ 116 (+673.33%)
Mutual labels:  accessibility, a11y
Accessibility interview questions
A starting point for questions to ask someone that wants you to give them a job
Stars: ✭ 236 (+1473.33%)
Mutual labels:  accessibility, a11y
Asqatasun
Mirror of Asqatasun ---> we've moved to GITLAB https://gitlab.com/asqatasun/Asqatasun - Opensource web site analyser, used for web accessibility "a11y"
Stars: ✭ 217 (+1346.67%)
Mutual labels:  accessibility, a11y
cauldron
cauldron.dequelabs.com/
Stars: ✭ 50 (+233.33%)
Mutual labels:  accessibility, a11y
vue-focus-loop
Vue component that helps you to to trap focus in an element.
Stars: ✭ 23 (+53.33%)
Mutual labels:  accessibility, a11y
Eslint Plugin Jsx A11y
Static AST checker for a11y rules on JSX elements.
Stars: ✭ 2,609 (+17293.33%)
Mutual labels:  accessibility, a11y
Accessibilitysnapshot
Easy regression testing for iOS accessibility
Stars: ✭ 236 (+1473.33%)
Mutual labels:  accessibility, a11y
Vue Announcer
A simple way with Vue to announce any useful information for screen readers.
Stars: ✭ 185 (+1133.33%)
Mutual labels:  accessibility, a11y
accessibility-resources
A curated list of accessibility resources
Stars: ✭ 66 (+340%)
Mutual labels:  accessibility, a11y
Creatability Components
Web components for making creative tools more accessible.
Stars: ✭ 248 (+1553.33%)
Mutual labels:  accessibility, a11y
Accessible modal window
Accessible modal dialogs
Stars: ✭ 196 (+1206.67%)
Mutual labels:  accessibility, a11y
jquery-accessible-simple-tooltip-aria
jQuery accessible simple tooltip window, using ARIA
Stars: ✭ 22 (+46.67%)
Mutual labels:  accessibility, a11y
Capable
Keep track of accessibility settings, leverage high contrast colors, and use scalable fonts to enable users with disabilities to use your app.
Stars: ✭ 189 (+1160%)
Mutual labels:  accessibility, a11y
eufemia
DNB Design System
Stars: ✭ 38 (+153.33%)
Mutual labels:  accessibility, a11y
Bootstrap Vue
BootstrapVue provides one of the most comprehensive implementations of Bootstrap v4 for Vue.js. With extensive and automated WAI-ARIA accessibility markup.
Stars: ✭ 13,603 (+90586.67%)
Mutual labels:  accessibility, a11y
Wai Tutorials
W3C WAI’s Web Accessibility Tutorials
Stars: ✭ 229 (+1426.67%)
Mutual labels:  accessibility, a11y
Focusoverlay
Library for creating animated overlays on focused elements
Stars: ✭ 167 (+1013.33%)
Mutual labels:  accessibility, a11y
Empathy Prompts
💡 Ideas to help consider Inclusive Design principles when making things for others to use.
Stars: ✭ 173 (+1053.33%)
Mutual labels:  accessibility, a11y
A11y Css Reset
A small set of global rules to make things accessible and reset default styling
Stars: ✭ 250 (+1566.67%)
Mutual labels:  accessibility, a11y
agnostic-axe
Framework agnostic accessibility reporter, powered by axe-core
Stars: ✭ 80 (+433.33%)
Mutual labels:  accessibility, a11y

Accessible Name Automation (Proof of Concept)

Netlify Status

This is an experiment based on set of changes to HTML and related standards called Accessibility Object Model (AOM).

It mainly uses the experimental global method window.getComputedAccessibleNode(node).

Such project tries to demonstrate that it is theoretically possible (in a certain way) to predict what the screen reader will say by focusing on semantic and non semantic elements with a bit of automated testing, thus reducing the need for manual testing.

Check out the demo website!

Motivation

To get more details about this experiment and its principles, please check the file called EXPLAINER.pdf located at the root of the current repository.

Details

This project includes, among others, the following:

  • React
  • Babel
  • ESLint
  • Styled Components
  • Styled Reset
  • Jest
  • Jest Puppeteer
  • Pa11y CI
  • Webpack

Tests are declared into ./src/app/wrapper/app.accessiblename.spec.js.

Prerequisites

  • Node v12.16.3
  • NPM v6.14.8
  • Git

First steps

Clone locally the repository.

cd <path/to/your/desired/folder/>
git clone [email protected]:jonathanlinat/accessible-name-automation-proof-of-concept.git

Install the dependencies.

cd accessible-name-automation-proof-of-concept/
npm install

Specific commands

Start a local demo.

npm run start:dev

Execute Accessible name tests (semantics) (getComputedAccessibleNode()).

npm run test:a11y:accessiblename

Execute Accessibility violation tests (axe-core).

npm run test:a11y:violations

Review generated test report.

npm run review:report

Compile the project.

npm run build
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].