Accessibility isn't an afterthought — it's built into the foundation of WakeAct. Everyone deserves an alarm clock that adapts to their needs.
Effective: March 2026
🏷️VoiceOver LabelsFull Coverage
📳Haptic PointsConfigurable
🎨Color ModesLight, Dark, High Contrast
🌍Languages10 Languages
💜 Our Commitment
WakeAct is designed to make mornings accessible for everyone. Whether you rely on VoiceOver, need larger text, prefer reduced motion, or use voice commands to manage your alarms — WakeAct adapts to how you interact with your device.
Accessibility is woven into every feature, from alarm creation and puzzle dismissal to sleep tracking and morning briefings. We believe waking up should never be a barrier.
🗣️Full VoiceOver Support
Semantic labels, hints, and combined elements across every screen.
🔤Dynamic Type
Scaled fonts via AppFont with an in-app larger text toggle.
📳Configurable Haptics
Per-interaction haptic feedback plus rich Core Haptics alarm patterns.
🎨High Contrast Mode
Optional high-contrast mode for improved readability.
👁️ Vision Accessibility
Every piece of text in WakeAct scales with your system font size setting. Our custom font system (AppFont) uses Apple's relativeTo: font scaling, ensuring text gracefully resizes from extra-small to accessibility-extra-extra-extra-large. An in-app "Larger Text" toggle provides an additional boost beyond system settings.
WakeAct includes an optional high-contrast mode that increases text and UI element contrast ratios for improved readability. This can be toggled independently of your system settings from the in-app Accessibility preferences.
WakeAct features a warm brown-toned dark mode designed specifically for nighttime use. The muted color palette reduces eye strain when setting alarms before bed or dismissing them in the morning, while maintaining sufficient contrast for readability.
Information in WakeAct is never conveyed by color alone. Alarm states, puzzle feedback, sleep quality indicators, and streak status all use paired icons, shapes, or text labels alongside color coding. This ensures usability for users with color vision deficiencies.
🖐️ Motor Accessibility
Configurable Haptic Feedback
Haptic feedback accompanies all interactions — button taps, toggles, alarm dismissal, and puzzle completion. Haptics can be globally enabled or disabled from Settings > Accessibility.
Core Haptics Alarm Patterns
Each alarm can use rich haptic patterns via CHHapticEngine, providing a tactile wake-up experience that works even when the phone is on silent.
Siri Voice Control
Set, toggle, show, and delete alarms entirely by voice through 4 Siri Shortcuts. No touch interaction required for core alarm management.
Widget Interactions
Toggle alarms directly from home screen and lock screen widgets without opening the app, reducing the number of taps needed.
Large Touch Targets
All interactive elements meet Apple's 44x44pt minimum touch target guidelines, ensuring comfortable tapping for users with motor difficulties.
Haptic Pattern Categories
Category
Usage
Standard
Light, medium, and heavy taps for general interactions
Notification
Success, warning, and error patterns for status changes
Selection
Subtle tap for toggles, pickers, and alarm time selection
Every interactive element — buttons, toggles, sliders, alarm cards, puzzle controls, and navigation items — has a descriptive VoiceOver label explaining what it does and its current state. VoiceOver hints provide additional context for how to interact with each element.
The in-app "VoiceOver Hints" toggle allows users to enable or disable supplementary hints based on their familiarity with the app.
Related information is semantically grouped using VoiceOver element combining. For example, an alarm card's time, label, repeat days, and enabled state are read as a single meaningful unit rather than individual elements, reducing navigation overhead for screen reader users.
Section headers across all screens are marked with the .isHeader trait, enabling VoiceOver's Headings rotor for quick navigation between sections — from alarm lists to sleep stats to settings categories.
Dynamic labels update based on state: alarm countdowns announce remaining time, puzzle screens announce current progress, the morning briefing reads weather and calendar information aloud, and toggles announce their current state.
✨ Motion & Audio Accessibility
🚫
All animations respect Reduce Motion
WakeAct checks both the system-level and in-app Reduce Motion settings via ThemeCache, ensuring consistent behavior everywhere.
Reduce Motion Toggle
All spring, bounce, and sliding animations are replaced with instant transitions when Reduce Motion is enabled. The in-app toggle works independently of, and in addition to, the iOS system setting.
Configurable Alarm Sounds
Choose from 11 alarm sounds across 3 categories (Gentle, Nature, Intense) with audio preview. Each alarm can have a different sound tailored to your preference and hearing needs.
Gradual Volume Ramp
Alarms start at a lower volume and gradually increase, preventing jarring wake-ups. This is especially helpful for users sensitive to sudden loud sounds.
Flash on Alarm
An optional screen flash visual indicator accompanies the alarm sound, providing a visual cue for users who are hard of hearing.
📱 Widgets & Live Activities
WakeAct provides glanceable alarm information without needing to open the app:
Alarm Countdown Widget: Shows time remaining until your next alarm
Toggle Alarm Widget: Enable or disable your alarm directly from the home screen
Stats Widget: Displays your streak, level, and habit score at a glance
All widgets support VoiceOver with descriptive labels for their content.
WakeAct's Live Activity displays your alarm countdown on the lock screen and Dynamic Island, with snooze progress when applicable. This keeps critical alarm information visible without unlocking your phone or opening the app — reducing the number of interactions required.
🎙️ Siri & Voice Control
WakeAct registers 4 Siri Shortcuts built with the App Intents framework, enabling completely hands-free alarm management:
⏰"Set an alarm"
Create a new alarm by voice
📋"Show my alarms"
List all your alarms
🔀"Toggle alarm"
Enable or disable an alarm
🗑️"Delete alarm"
Remove an alarm hands-free
☀️
Morning Briefing
After dismissing your alarm, WakeAct can read your morning briefing aloud — including weather conditions and today's calendar events — so you can start your day informed without needing to look at the screen.
🌍 Localization
WakeAct is fully localized in 10 languages via Apple String Catalogs, ensuring accessibility extends to users around the world:
Language
Direction
English (source)
LTR
Spanish
LTR
French
LTR
German
LTR
Japanese
LTR
Korean
LTR
Chinese (Simplified)
LTR
Portuguese (Brazil)
LTR
Hindi
LTR
Arabic
RTL
🔄
Full RTL Support
Arabic localization includes complete right-to-left layout mirroring for all UI elements, navigation, and text. Over 400 strings — including enum labels, achievement titles, notification content, and widget text — are translated across all 10 languages.
⚙️ Accessibility Settings
All accessibility options are available at: Settings > Accessibility
WakeAct provides the following in-app accessibility toggles:
Setting
Description
Reduce Motion
Disables all animations, respects the system setting and adds an independent in-app toggle
High Contrast
Increases UI contrast ratios for improved readability
Larger Text
Boosts font sizes beyond the system Dynamic Type setting
Haptic Feedback
Globally enables or disables haptic feedback on all interactions
Flash on Alarm
Enables a visual screen flash when the alarm fires
VoiceOver Hints
Enables supplementary hints for VoiceOver users describing how to interact with elements
🎛️
ThemeCache for Performance
All accessibility preferences are cached via ThemeCache, a singleton that reads from UserDefaults once and caches values, eliminating per-render overhead so accessibility settings never impact app performance.
✅ Standards & Compliance
WakeAct is designed to align with:
🌐WCAG 2.1 Level AA
Web Content Accessibility Guidelines applied to mobile
🍎Apple HIG
Accessibility best practices for iOS
🇺🇸Section 508
US federal accessibility standards
🇪🇺EN 301 549
European accessibility requirements for ICT
💬 Feedback & Contact
Accessibility is an ongoing journey. If you encounter any accessibility barrier, have suggestions, or need assistance, please reach out: