How I automated 62% of Europe's RGAA accessibility criteria

Published: (April 10, 2026 at 07:15 PM EDT)
4 min read
Source: Dev.to

Source: Dev.to

Introduction

In Europe, web accessibility became mandatory in June 2025 under the European Accessibility Act (EAA). While the EU requires compliance, it does not prescribe a testing method; each member state follows its own standard. France uses RGAA 4.1, a government‑published specification with 106 criteria and detailed test procedures.

Existing tools (Axe, WAVE, Lighthouse) target WCAG and do not map to RGAA out‑of‑the‑box, so I built a dedicated solution.

RGAA 4.1 vs. WCAG

  • 106 criteria (vs. 78 in WCAG 2.1 AA)
  • Organized into 13 thematic areas (images, colors, links, forms, navigation, …)
  • Provides precise test methods – not only “what to achieve” but also “how to verify”

When a public agency or a company subject to the EAA needs an audit, the required reference is RGAA, not WCAG. No SaaS tool existed for that purpose.

Automation Coverage

Out of the 106 RGAA criteria, 66 (62 %) can be tested automatically. The best coverage by theme:

ThemeAutomatable / Total%
Mandatory elements9 / 1090 %
Navigation8 / 1173 %
Structure3 / 475 %
Colors2 / 367 %
Forms7 / 1354 %
Images5 / 956 %
Multimedia1 / ?23 % (lowest)

The highest ROI comes from mandatory elements (missing lang attributes, invalid HTML, missing page titles). Fixing these once resolves violations across every page.

Implementation

Core detection engine

  • axe‑core is used for low‑level accessibility checks.
  • A custom mapping layer links each axe‑core rule to one or more RGAA criteria (the relationship is many‑to‑many).
{
  "image-alt": {
    "rgaaCriteria": ["1.1", "1.2"],
    "theme": "Images",
    "testMethod": "automatic"
  }
}

The mapping is stored in a relational database (criteria, themes, test methods, and their WCAG counterparts) with full referential integrity.

Pattern detection

Instead of dumping thousands of individual violations, the tool groups them by DOM fingerprint (same CSS selector, component hierarchy, and violation type).

Example output:

“Your product images use the same component — fixing the alt attribute in this one place resolves 287 violations across 50 pages.”

Site crawling & template detection

  • Crawls the whole site and discovers pages.
  • Detects page templates via DOM fingerprinting, avoiding duplicate scans (e.g., 200 product pages sharing a template → scan one and extrapolate).
  • Supports authenticated pages (dashboard, admin, settings).

Technology stack

ComponentTechnology
Front‑end (marketing)Nuxt 3 – SSR
Front‑end (dashboard)Nuxt 3 – SPA
Accessibility engineaxe‑core + Puppeteer (headless)
Data layerPrisma + PostgreSQL
BillingStripe (Free → Enterprise tiers)
AI‑powered fix suggestionsOpenAI (adapted to Vue, React, Angular, WordPress)

Integration into Development Workflows

GitHub Action

- uses: rgaaudit/action@v1
  with:
    url: ${{ env.STAGING_URL }}
    threshold: 75
    api-key: ${{ secrets.RGAA_KEY }}

If the RGAA score drops below the threshold, the pull request is blocked.

REST API (CI/CD)

curl -X POST https://rgaaudit.fr/api/ci/scan \
  -H "X-API-Key: sk_..." \
  -d '{"url": "https://staging.mysite.com"}'

MCP Server (local use)

npx @rgaaudit/mcp-server
> rgaa_audit https://mysite.com
# Score RGAA: 72/100
# Patterns detected: 6
# Priority fixes: 3

Benefits

  • 62 % automation handles repetitive checks (contrast, alt text, heading structure).
  • Frees expert time for the remaining 38 % that require human judgment (semantic relevance, keyboard navigation quality, screen‑reader experience).
  • Pattern grouping turns a massive list of violations into an actionable plan: “Fix this component once, and 200 pages are fixed.”

Availability

  • Live at rgaaudit.fr – free tier: 3 audits/month, up to 15 pages each.
  • MCP server published on npm as @rgaaudit/mcp-server.

Conclusion

Local accessibility standards create a real market gap. While most international tools speak WCAG, Europe’s 27 countries often require their own specifications (e.g., France’s RGAA). A tool that speaks the language of auditors and regulators can dramatically improve compliance workflows.

If you’re dealing with European accessibility requirements—or simply curious about how RGAA compares to WCAG—feel free to try the tool and share your feedback.

0 views
Back to Blog

Related posts

Read more »

Gitnova

!open-sourced-ithttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fupload...