PomoDuo Accessibility

Accessibility Statement for PomoDuo App Store Submission ♿

View the Project on GitHub arieltyson/pomoduo-accessibility

PomoDuo Accessibility

Last updated: February 2026

PomoDuo is designed to be usable by everyone. Every screen, control, and animation in the app has been built with Apple’s accessibility frameworks and tested against the nine categories in the App Store’s Accessibility Nutrition Labels.

Nutrition Label Summary

Feature Status Notes
VoiceOver Fully supported Custom labels, hints, traits, and element grouping on all screens.
Voice Control Fully supported All interactive controls are labeled; high-traffic buttons have short spoken alternatives.
Larger Text Fully supported All text uses Dynamic Type. Layouts adapt without truncation at the largest accessibility sizes.
Dark Interface Fully supported All surfaces, labels, and gradients respond to Light/Dark appearance.
Sufficient Contrast Fully supported Brand colors automatically shift to higher-contrast variants when Increase Contrast is enabled, meeting WCAG 2.1 AA ratios.
Differentiate Without Color Fully supported Anywhere color is the primary differentiator, a secondary visual cue (icon, shape, or symbol) appears when the setting is on.
Reduce Motion Fully supported All animations, transitions, and pulsing effects are suppressed when Reduce Motion is enabled.
Closed Captions Not applicable PomoDuo contains no video or pre-recorded audio content.
Audio Descriptions Not applicable PomoDuo contains no video content.

VoiceOver

Every view provides descriptive accessibility labels and hints:

Decorative elements (icons used purely for visual embellishment) are hidden from VoiceOver so they don’t add noise to the experience.

Voice Control

All interactive controls have visible text labels that Voice Control can match. For controls with multi-word labels, shorter spoken alternatives are provided so users can activate them with fewer words:

Screen Control Spoken alternatives
Timer Start Focus “Start”, “Begin”, “Go”
Timer Stop “End”
Timer Resume “Play”, “Continue”
Timer Skip “Next”
Timer Continue “Next”, “Done”
Partner (unpaired) Generate Pairing Code “Generate”, “Code”
Partner (unpaired) Enter Partner’s Code “Enter Code”, “Enter”
Partner (paired) Start Session “Start”, “Begin”
Partner (paired) Disconnect “Unpair”, “Remove”
Code entry Connect “Join”, “Pair”
Session request Accept “Yes”, “OK”
Session request Decline “No”, “Reject”
Active session End Session “End”, “Stop”
Active session Skip to Break “Skip”, “Break”
Active session Next Round “Next”, “Continue”
Settings Sign Out “Logout”, “Exit”
Settings Delete Account “Delete”
App Blocking Enable App Blocking “Enable”, “Block”
App Blocking Choose Apps to Block “Choose Apps”, “Select”
App Blocking Clear Selection “Clear”, “Reset”

Larger Text & Dynamic Type

Dark Interface

PomoDuo fully supports Dark Mode:

Sufficient Contrast

When the user enables Settings > Accessibility > Display & Text Size > Increase Contrast, PomoDuo’s brand and semantic colors shift to higher-saturation or higher-luminance variants that meet WCAG 2.1 AA contrast ratios against their respective backgrounds:

All high-contrast variants are verified by automated tests.

Differentiate Without Color

When Settings > Accessibility > Display & Text Size > Differentiate Without Color is enabled:

All other color-coded elements in the app already use secondary cues (text labels, distinct icons, or position) and require no additional treatment.

Reduce Motion

Every animation in the app respects the Reduce Motion setting:

Testing

Accessibility behavior is covered by automated tests:

Contact

If you have questions or feedback about PomoDuo’s accessibility, please contact us at arieltyson30190@gmail.com.