Accessibility

Our commitment

Gallery Checkup is designed to be used by everyone, regardless of how they read, hear, move, or see. We test the app with iOS accessibility settings enabled and follow the Web Content Accessibility Guidelines (WCAG) 2.2 at the AA level where applicable to a native mobile app, plus Apple's Human Interface Guidelines for accessibility on iOS and iPadOS.

Supported assistive technologies

FeatureWhat it does in Gallery Checkup
VoiceOver Every photo, button, badge, and status indicator has a descriptive label. Decisions (Keep / Remove / Skip) are announced. Scan completion is announced with the number of bundles ready to review.
Voice Control All buttons are individually nameable. Icon-only buttons (more options, clear, hear summary) have explicit labels so they can be activated by name.
Dynamic Type All text scales with the system text size, including the largest five "Accessibility Sizes". Layouts switch from horizontal to vertical at large sizes so nothing gets cut off.
Dark Mode A full dark palette is included. The app follows the system setting — never forced.
Increased Contrast A dedicated high-contrast palette ships for users with Increase Contrast enabled in iOS Settings, raising text and border contrast above standard ratios.
Reduce Motion Every bounce, rotate, shimmer, ring pulse, and symbol effect is replaced with a quiet, near-instant alternative when Reduce Motion is on.
Reduce Transparency Materials and glass effects are swapped for solid surfaces automatically.
VoiceOver Rotor A custom "Bundles" rotor lets VoiceOver users jump between cleanup bundles without scrubbing through every row.
Differentiation without color Selection state, success, and destructive actions are always communicated by both an icon (checkmark, trash, lock) and a label, never color alone.

WCAG 2.2 conformance summary (AA)

CriterionStatusNotes
1.1.1 Non-text Content Pass All meaningful imagery has accessibilityLabel; decoration is hidden.
1.3.1 Info & Relationships Pass Headings, list semantics, selected/header traits applied.
1.3.4 Orientation Pass No orientation lock.
1.4.1 Use of Color Pass Icons + text accompany every color signal.
1.4.3 Contrast (Minimum) Pass Palette audited to meet ≥4.5:1 for body text and ≥3:1 for large text.
1.4.4 Resize Text Pass Dynamic Type to AX5 supported.
1.4.10 Reflow Pass Responsive layouts adapt to 320 pt width × AX5 without horizontal scrolling.
1.4.11 Non-text Contrast Pass Borders, controls, focus indicators meet 3:1.
2.1.1 Keyboard Pass Fully operable with hardware keyboard via Switch Control / Voice Control.
2.2.2 Pause, Stop, Hide Pass All looping animations respect Reduce Motion.
2.3.1 Three Flashes Pass No flashing content.
2.3.3 Animation from Interactions (AAA) Pass Motion gated by Reduce Motion.
2.4.1 Bypass Blocks Pass VoiceOver rotor for bundles; section headers throughout.
2.4.6 Headings and Labels Pass Section titles use isHeader; status hero exposes its title as a heading.
2.4.7 Focus Visible Pass System focus ring + custom indicator on key controls.
2.4.11 Focus Not Obscured (Min) Pass Floating buttons do not cover focused row.
2.5.1 Pointer Gestures Pass All multi-touch gestures have single-pointer alternatives.
2.5.3 Label in Name Pass Accessibility labels include the visible text of the control.
2.5.7 Dragging Movements Pass Video scrubbing has button equivalents.
2.5.8 Target Size (Minimum) Pass Interactive elements meet 44×44 pt.
3.1.1 Language of Page Pass App declares English and Portuguese (Brazil).
3.3.1 Error Identification Pass Errors (e.g. video preview unavailable) announced and visually marked.
4.1.2 Name, Role, Value Pass All controls expose role and state to assistive tech.
4.1.3 Status Messages Pass Scan completion, review decisions, and async errors posted as accessibility announcement.

Detailed behaviors

  • VoiceOver descriptions for photos and videos include the media type, capture date, file size, the reason it was flagged, whether it is a favorite, whether it lives in an album, and whether it has been marked for removal.
  • The daily check-up plan announces each step with its category, item count, and completion state.
  • The "Hear summary" button (Apple Intelligence narration) automatically reveals the written transcript on screen and posts the same text to VoiceOver, so the summary is never audio-only.
  • The video scrubber has both a slider (with continuous accessibility value) and explicit Previous / Next buttons, so users who cannot drag can step through the video.
  • Localization: full Brazilian Portuguese and English coverage. The app respects the system language; no in-app override is required.

Known limitations

  • Captions and audio descriptions for video content are not applicable — Gallery Checkup does not produce audio or video content. When the user previews their own video, any embedded captions are played through the iOS system player without modification.
  • AAA contrast (1.4.6) is not formally claimed; the palette is tuned for AA and meets AAA in many but not all combinations.
  • Apple Intelligence summaries depend on device support and may be unavailable on older hardware; the app falls back to the written summary.

Feedback

If you encounter an accessibility barrier, please email us at [email protected]. We treat accessibility reports as priority bugs.