What is measured, what is not, and what is missing
We sell accessibility. This page must therefore withstand the same scrutiny our customers will face. You will find no compliance rate on it: establishing one requires a human audit, that audit has not happened, and an invented percentage on this page would be a false document in a compliance file.
This figure can be reproduced. The list of audited pages and the program that opens them are in our repository, and the command is node scripts/audit-accessibilite.mjs. You will get the same result we do, or you will catch us out, and either suits us.
What is audited is not everything we do
Conflating them would be the easiest way to suggest the whole is verified because one part is. Each is therefore announced with what backs it, and with what it lacks.
The audio component your readers use, on your own site.
This is the most worked-on scope, because it is the product. Play, pause, seeking and speed are keyboard-operable, focus is visible, position is announced to screen readers, and the listener has their own settings: text size, a dyslexia-friendly typeface, reinforced contrast.
The proof: The client area shows, account by account, the list of what is actually active on your player, with the RGAA reference for each aid. That list is what feeds the declaration template, not a brochure.
The caveat: The player is one brick of your site, not your site. Its conformance says nothing about your navigation, your forms or your editorial images.
The pages you are reading right now, with no account.
Swept at every revision by a real browser: 35 pages on the last pass, zero gaps of critical, serious or moderate severity. A set of checks also reads the source at every commit and refuses regressions we have already met: a skip link leading nowhere, a heading-level jump, a scrolling region unreachable by keyboard, text whose opacity falls below the contrast threshold.
The proof: The command is public and the list of audited pages is in the repository. You will get the same result we do: node scripts/audit-accessibilite.mjs.
The caveat: An automated sweep does not replace an audit. See «what the measurement does not say» below, which is the most important section on this page.
The screens behind authentication, used by your teams.
Built with the same components and the same design system as the public site, so it inherits its contrasts and its structure. The accessibility report, the most consulted screen on this subject, is keyboard-operable and readable by a screen reader.
The proof: None, and that is the point to take away: the automated sweep stops at the authentication door. We therefore present no figure for this scope.
The caveat: It is our largest known blind spot. It is written here rather than passed over in silence.
What the measurement does not say
Zero gaps in an automated sweep does not mean compliant. Here is exactly what that zero does not cover.
It catches what can be computed: a contrast, a missing attribute, a heading order. It cannot judge whether an alt text describes its image well, whether the reading order makes sense, or whether an instruction is understandable. Those criteria need a human, and nobody has run them across our site.
A declaration of conformity presupposes a formal audit, criterion by criterion, on a defined sample, dated and signed. It has not happened. As the law stands, this site must be considered non-compliant in the RGAA sense: not because everything on it would be inaccessible, but because conformity is only declared with an audit behind it.
A screen reader cannot be simulated. Until we have run NVDA, JAWS and VoiceOver over the main journeys, we cannot say the site is usable with them, only that it is built to be.
The client area, because it sits behind authentication. And the API reference, which goes through the same access control. They are not counted in the announced figure, and announcing it otherwise would inflate the coverage without improving anything.
It covers the audio component, not your whole site, and it says so in its own text. We are not a consultancy: have your conformity validated by a professional before you publish it.
What we found on our own site, and fixed
Including what looks bad, because that is precisely what makes a register believable: it contains what nobody would have invented. Each entry says what changed so the defect cannot come back, not merely that it was repaired.
- 31 juillet 2026The «Skip to content» link led nowhere
On ten pages out of eleven, and from the day it was written. It pointed to an identifier no element carried. It is the very first move of keyboard navigation, and RGAA criterion 12.7.
What changed: The identifier is now set on the main content of every page, and a check refuses any public page whose skip-link target does not exist.
- 31 juillet 2026Four pages jumped from h1 straight to h3
A heading-level jump (RGAA 9.1). The grouping was obvious to the eye and invisible to anyone listening to the page: the section title was missing.
What changed: The missing level is now either a real visible heading or a screen-reader-only one, and a check refuses an h3 with no h2 before it.
- 31 juillet 2026Scrolling code blocks were unreachable by keyboard
WCAG 2.1.1. A block that scrolls sideways hides part of its content from anyone without a mouse, on the most technical page of the site.
What changed: The rule now lives in the component rather than in the page, so it follows every use of it, including those that do not exist yet.
- 5 août 2026Content stayed invisible when scripts were off
Reveal-on-scroll animations left sections at zero opacity for anyone whose scripts did not run, which includes some assistive setups. Two whole pages displayed blank.
What changed: Visibility is now the default state, and the animation is what gets added, only where scripting is available.
- 5 août 2026The first screen pulsed with no way to stop it
WCAG 2.2.2. A slow opacity animation ran over the whole hero, indefinitely, including its text.
What changed: The animation moved to a decorative layer behind the content, and it stops entirely when the system asks for reduced motion.
- 5 août 2026An opacity veil pushed text under the contrast threshold
The already-muted colour of the design system, at 0.85 opacity, fell to 4.18:1 against the 4.5:1 required. On the paragraph stating the billing rule, of all places.
What changed: No opacity on an already-muted colour. To go quieter, a colour has to be declared in the design system rather than veiled on the spot.
- 5 août 2026In-text links were told apart by colour alone
RGAA 10.6. A link inside a paragraph must be distinguishable without relying on colour, or a reader who does not perceive that colour sees plain text.
What changed: In-text links carry an underline, systematically, and it is not removed on hover.
Four tests you can run on this page
This is the section that commits us most, and deliberately so: it invites you to catch us out, here, now. An accessibility promise you cannot test yourself is worth no more than a badge in a footer.
Press Tab from the top of this page.
What should happen: The first stop should be a «Skip to content» link that appears. Every stop after it should be visible, ringed in green. You should be able to reach any link without ever guessing where you are.
Press Ctrl and + (Cmd and + on a Mac) until the browser reads 200%.
What should happen: The text should reflow into one column, nothing should be cut off, and no horizontal scrollbar should appear at page level.
In your browser's content settings, deny scripts for this domain, then reload.
What should happen: Every public page must stay readable and navigable. This is the test that caught us out on 5 August: two whole pages displayed blank, and we only saw it by doing it.
Turn on «reduce motion» in your system's accessibility settings, then reload.
What should happen: No more fade-ins, no more breathing on the first screen. If something still moves, it is a gap: write to us and it goes ahead of the rest.
Hit an obstacle? Tell us, it goes ahead of the rest
On this site or in the player embedded on one of our customers' sites, write to contact@wedispatch.fr describing the page and what blocked you. Accessibility fixes jump the queue, and that is not a courtesy: half the register above comes from reports, not from our own reviews.
If you feel you have not had a satisfactory answer, and you are in France, you can refer the matter to the Défenseur des droits, the French independent rights authority.
Looking for what is active on YOUR player, and the declaration template to publish? They are in your client area, computed from your own settings rather than copied from a brochure.