Rep Jam Gig

Accessibility

Where things stand.

A plain account of how Rep Jam Gig behaves under each of the accessibility features Apple lists on the App Store — not a claim of full conformance. Where something hasn't been verified, it says so. This page describes the iPhone and iPad app. The Android app hasn't been through the same assessment yet.

Last updated 6 October 2026

VoiceOver
The app is built from standard SwiftUI controls — text, buttons, form fields — which carry VoiceOver support from the system by default, and every icon-only button has an explicit spoken label so VoiceOver announces what it does rather than just "button." One screen is not: a chart. A PDF or a photo is shown by the system's own viewers as a single element carrying the song's name, so a PDF's own text is not read out. A MusicXML chart is drawn as a page of notation whose controls — play, part, intro, repeat, tempo — are web controls, each with its own spoken label; the notation is labelled as something that can't be read aloud, pointing at Play instead. The app has not been walked through screen by screen with VoiceOver turned on, so some rows likely read as several separate stops (title, then key, then note) rather than one — correct, but slower than it should be — and the chart screen has had the least of that attention.
Voice Control
Because the controls are standard, Voice Control can name and tap buttons, fields and tabs by their labels. A few list rows open on tap rather than as buttons — Voice Control reaches those through its numbered grid or "show names" overlay rather than by label.
Larger Text
Headings and body text scale with the system's Dynamic Type setting, since they're defined relative to a text style rather than a fixed size. The exception is a MusicXML chart: the notation and the controls under it are drawn at their own size and do not follow Dynamic Type, though the page can be pinched to zoom. Layout at the largest accessibility text sizes hasn't been checked screen by screen; some fixed-width elements — the key pill, the stat cards — may clip or overlap rather than reflow at those sizes.
Dark Interface
The app has one fixed dark theme — dark plum with gold headings. It does not follow your system's light or dark setting: there is no light mode and no way to switch. One thing is deliberately light: a MusicXML chart is drawn as black notation on a white page, because that is what sheet music is, and reading it on a dark ground is harder rather than easier. Everything around it — the controls, the screen it sits on — stays dark, and there is no way to turn the page itself dark.
Differentiate Without Color Alone
Status is never conveyed by hue alone. A performance count reads as literal text ("3×" or "—"), a song's readiness is a named section rather than a coloured badge, and a selected filter chip or stat card inverts — dark text on a solid gold fill instead of grey text on the dark panel — so the difference is one of light against dark, not one colour against another.
Sufficient Contrast
Body text on the dark background measures about 15:1 and gold headings about 10:1, both well past the 7:1 AAA mark; secondary grey text is about 6:1, past the 4.5:1 AA mark for body text. The one deliberate exception is the dim "—" shown where a count is zero, at roughly 2:1 — it is de-emphasised on purpose, and it is a literal character VoiceOver reads, so nothing is conveyed by that colour that isn't also conveyed by the text.
Reduced Motion
The app is almost entirely static — a short scroll when you tap a stat card, the calendar sliding between months, a small spinner while a library comes back from iCloud or a chart file is being read, and the system's own sheet and toast transitions. The largest moving thing is a playing chart: a line travels along the notation as the music goes, and the page turns when the music reaches the end of one. That motion is the point of the feature, and it happens only while you have pressed Play. The app does not specifically check or respond to Reduce Motion, or to Reduce Transparency.

Something in your way?

Tell us what it is

If VoiceOver, Dynamic Type, or anything else about how you use your device makes part of Rep Jam Gig hard to use, we want to know specifically what and where — that's more useful to us than a general report. Reach us through the support page, or directly at support@repjamgig.com.