Skip to content

Accessibility

Last checked 18 September 2026.

Arrcade is built to be usable with a screen reader, at large text sizes, with reduced motion, and by keyboard on the web. This page says exactly what that means, how it is checked, and what is still missing. Where something is not done, it says so.

What the app supports

On iPhone, iPad and Android, from one codebase, so these apply on all three.

FeatureHow it is checked
Screen readersEvery control carries a name and a role. On each build the app’s accessibility tree is rendered and written out as the transcript a screen reader would speak; an unnamed control changes that transcript and fails the build.
Voice ControlThe same names are what Voice Control listens for.
Larger textText follows the system size past 200%. A check looks for boxes with a fixed height around text, which is what causes a label to be cut in half at large sizes, and fails on any it finds.
ContrastEvery colour pair in the palette is measured against the 4.5:1 minimum by a unit test, in all three themes.
Colour is never the only signalStatus is carried by a word as well as a colour: “Missing”, “Unreachable”, “In Library”.
Reduced motionTurning the setting on stops the animations, including while the app is open rather than only at launch.
Nothing needs a gestureAnything you can do by pulling or swiping has a button: lists refresh from the header, and a queued download can be removed without swiping it away.
Dark by defaultThree themes ship, and dark is the one you get.

What the website supports

The web app targets WCAG 2.2 level AA. On every build, a real browser drives 32 pages, signed out and signed in, and checks them with axe-core. It also proves the things axe cannot see:

  • A skip link, first in the tab order, so the navigation can be passed in one key press.
  • A recorded tab order per page, so a change to it shows up as something to review rather than something nobody notices.
  • Dialogs keep focus inside while open, close on Escape, and give focus back to whatever opened them.
  • Every page works at 400% zoom with no sideways scrolling.
  • Anything you have to click is at least 24 by 24 pixels.
  • One main heading per page, and no skipped heading levels.
  • Reduced motion is honoured, including the parts a stylesheet cannot reach, such as content that advances on a timer.

What is not done

  • No independent audit. Everything above is our own testing. Nobody outside this project has assessed it.
  • The hands-on pass was on an iPhone. The same code runs on Android and the same automated checks cover it, but TalkBack has had less time in someone’s hands than VoiceOver has.
  • Automated checks miss things. axe-core says so itself: it catches well under half of real accessibility problems. It is a floor, not a ceiling.
  • We cannot fix the services Arrcade controls. Sonarr, Radarr and the rest are other people’s software with their own interfaces. Arrcade only controls how it presents their data.

If something does not work

Please tell us, and it will be treated as a bug rather than a request. Email ben@togglekit.dev with what you were using (VoiceOver, TalkBack, a keyboard, a larger text size), what you were trying to do, and where it stopped. That is usually enough to reproduce it.

We aim to reply within two working days. There is no separate accessibility backlog: a report of this kind goes to the front of the ordinary one.