Accessibility

Last revised 23 October 2026. Honest state, not a certificate.

The website

  • Every text colour is at least 4.5:1 and every control colour at least 3:1 against its background in both light and dark themes (WCAG 2.2 AA), checked by the generator that produces the colour tokens.
  • There is a skip link, headings are in order, every image has alternative text, tables have header cells, and the site works with a keyboard alone.
  • Light and dark follow your system and can be switched; text can be resized with the browser; nothing moves on its own except the hero illustration, which respects "reduce motion".
  • Every page is available in Urdu and Arabic, right to left. The translations of the legal pages are not lawyer-checked, so each says the English page is the binding one.
  • The site is static, loads no scripts from anyone else and works offline after the first visit.

The app

  • The app is built with Flutter, which exposes its widgets to Android's accessibility services. Buttons and switches carry labels; delivery states are words as well as ticks and colours; text follows the phone's font-size setting; the theme follows the phone's light and dark setting and, on Android 12 and newer, its wallpaper colours.
  • For people who would rather listen than read: "I prefer to listen" on the first screen (and later in Chat settings) reads incoming messages aloud in the phone's own voice and the app's language, speaks what happens (sent, stuck, someone nearby, SOS), and swaps the chat list for six large buttons: Talk, People, Files, SOS, I'm safe, Help. A single chat can be read aloud from its More… menu.
  • Push-to-talk, voice notes and calls exist alongside text; a message can be sent by camera, by sound, or by any messaging app for people who cannot use one of the radios.
  • Menus are kept short on purpose: at most five or six lines, the rest one tap deeper under More… or Settings, in the same order every time. Touch targets are at least 48 pixels, and screens are checked at 360 pixels wide with text at 130%.
  • The app is in English, Urdu (in Urdu script and in Roman Urdu) and Arabic, picked automatically from the phone's language, with Urdu and Arabic laid out right to left. Pashto, Sindhi and Punjabi show Urdu, then English, where a native speaker has not yet checked a word. The Arabic was machine-translated and has not yet been checked by a native speaker.
  • Not yet checked: the listening mode on a phone with a person who relies on it, a full pass with TalkBack, switch access, or a screen magnifier. The mesh view, the QR scanner and the animated hand-carry code are visual by nature and do not yet have non-visual alternatives beyond the paste and sound routes. We will not claim conformance we have not tested.

Tell us what is in the way

Email hello@yapmesh.com with "Accessibility:" in the subject, say which screen or page, which assistive technology, and what happened. We answer within seven days, and an accessibility fix is treated as a bug, not a feature.