Introduction

The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect.

Tim Berners-Lee

Principles (POUR)

The four guiding principles of web accessibility are known by the acronym POUR.

Perceivable
Users must be able to perceive all information and interface components (sight, hearing).
Operable
Users must be able to operate a product with any means available to them (mouse, keyboard, touch screen, etc.).
Understandable
Users must understand the information as well as how to operate the interface (easy, precise and predictable).
Robust
Users can operate the product in any possible environment (web browsers, apps, etc.) and can make use of assistive technologies.

Types of impairments

Visual impairments are usually the main focus when we talk about accessibility, but they are not the only concern. There are many conditions that we have to take into consideration when designing and developing.

TypePermanent conditionsTemporary impairments
Visual
  • Blindness
  • Color blindness
  • Glaucoma
  • Being in a bright room
  • Black and white screens
  • Printed documents
Hearing
  • Deafness
  • Hard of hearing
  • Being in a loud environment
  • Not being able to play audio out loud
Cognitive or technical
  • Attention and concentration disorders
  • Dyslexia and other learning disorders
  • Autism
  • Low battery
  • Limited internet connection
Motoric
  • Loss of limb
  • Multiple sclerosis
  • Muscular dystrophy
  • Parkinson's disease
  • Standing in a moving train
  • Broken arm
  • Recovering from a surgery

Testing for accessibility

Here is a small list of useful tools to help you test your applications:

Google Lighthouse
axe DevTools
Automatically scan websites and receive a report of violations.
jest-axe
Custom Jest matcher for automating tests for accessibility using axe.
Level Access Platform
Partner for Flix to perform automated and manual tests and evaluations to be compliant with lawmakers.

Notice that automated tools do not guarantee that your application is fully accessible. These tools work like code linters (eslint, stylelint, etc), and will only be able to give you an overview of basic accessibility issues.

You still need to create a strong accessibility testing culture, by incorporating real assistive technologies to test your applications and include disabled people in your user research to guarantee a good quality of current and new features.