Features

Click the button in the bottom-right corner to open the menu.

Font Size

80% → 200% in 10% steps

High Contrast

Black background, white text

Grayscale

Full CSS filter

Dyslexia Font

OpenDyslexic loaded on demand

Reading Guide

Horizontal line following the cursor

Highlighted Links

All links bold + outline

Reduce Motion

All transitions at 0ms

Integration

Two lines are enough in any project:

# 1. Install via npm
npm install a11y-control

# 2. Add the tag (it handles its own loading)
<a11y-control lang="en" position="bottom-right"></a11y-control>

Available Attributes

lang       "en" | "fr"                   (default: "en")
position   "bottom-right" | "bottom-left"
           "top-right"    | "top-left"   (default: "bottom-right")

From npm (local)

// ES module import
import 'a11y-control';

Test Content

Here is an example of typical website content. You can use the accessibility controls to change the look of this page in real-time. All preferences are saved in localStorage and restored on every visit.

Some useful links: WCAG Quick Reference, MDN Accessibility, axe DevTools.

A11yControl component demonstration banner

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo.

Test Form

Verify that contrast and readability remain correct with active filters.

WCAG 2.1 Criteria Covered

The component itself complies with the following criteria:

1.4.1 Usage of Color 1.4.4 Resize Text 1.4.6 Contrast Enhanced 1.4.8 Visual Presentation 1.4.11 Non-text Contrast 2.1.1 Keyboard 2.1.2 No Keyboard Trap 2.3.3 Animation from Interactions 2.4.3 Focus Order 2.4.7 Focus Visible 3.3.2 Labels or Instructions 4.1.2 Name, Role, Value