Built for every caregiver’s body and mind.

Caregivers come with every combination of eyes, hands, and attention budgets. Resilient Kids is built to meet that reality from day one — not retrofitted later. Below is what we have shipped, how we test it, and what we are still working on.

VoiceOver and TalkBack on every screen

Every interactive control in the app — buttons, tiles, list rows, the child switcher, the week phase navigation, the Evidence and Governance card, the readiness-signal prompts — carries a screen-reader label and an accessibility role. The same label is what shows visually and what assistive tech announces, so caregivers using VoiceOver on iOS or TalkBack on Android land on the same surface as caregivers reading the screen with their eyes.

Labels match what you see

The accessibility label is the same string as the visible text, so what a screen reader announces is what a sighted caregiver reads. No silent mismatches between visual and audio.

Roles are explicit

Every interactive primitive in the design system declares its role — button, link, switch, header. Screen readers can move between landmarks instead of swiping through every element.

Stable identifiers

Every interactive @rk/ui primitive accepts a stable test identifier — a lint check enumerates the full surface so automated assistive-tech tooling and end-to-end tests find the same controls on every release.

Tested how

We walk VoiceOver across every screen on every release pass. The Xcode Accessibility Inspector pass for AX5 Dynamic Type re-walk is part of the production-launch runbook, so the screen-reader experience lands before paying caregivers do.

Dynamic Type — text that scales with you

Many caregivers run iOS at larger text sizes — for low vision, for tired eyes, for reading at arm’s length while holding a baby. The app’s typography and tap targets scale with the system text-size setting, including the larger Accessibility sizes.

Standard sizes

From extra-small to extra-extra-large, every text surface scales with the system setting. Tab bar, child switcher, week phase navigation, intake forms, account settings.

Accessibility sizes (AX1 – AX5)

The larger Accessibility text scales continue to scale the design system. Reading body type, evidence-and-governance card body, weekly module headings.

Layout rather than truncation

At the largest sizes, surfaces re-flow rather than truncate — text wraps to additional lines, tiles stack instead of clipping. No "…" cutoffs on first reach for AX5.

A small number of edge surfaces are still on our AX5 re-walk list (the operator runbook step before production submission). If you hit a layout that doesn’t scale right, please tell us — that’s the kind of feedback that closes those edges fastest.

Reduce Motion respected

Caregivers with vestibular sensitivities — or anyone who simply prefers a calmer interface — can enable Reduce Motion in iOS or Android system settings. Resilient Kids honors that setting: parallax effects, slide transitions, and bounce animations either disable or shorten so the interface holds steady.

Color contrast meets WCAG AA

Every body-text color pair in the design system meets WCAG AA contrast against the surface it sits on — navy on white, white on navy, the muted-body grey on the surface grey. Buttons, links, error states, and the typed Evidence and Governance card all pass the same threshold so caregivers with low vision or color-vision differences can read every surface without strain.

  • Body text — 4.5:1 minimum against its background.
  • Large text and graphical elements — 3:1 minimum.
  • State changes (focus, error, success) carry both color and a non-color cue (icon, weight, label change) so the meaning lands without color perception.

Touch targets, focus states, and the small things

Apple’s Human Interface Guideline minimum is 44 by 44 points for interactive controls. We hold to that across the app, including in dense surfaces like the comparison tables, the child switcher, and the weekly module phase navigation.

Visible focus states

Every interactive control shows a visible focus outline on web and on iOS hardware keyboards. Keyboard-only caregivers always know where they are.

Alt text on every image

Every meaningful image carries an alt-text description. Decorative images are explicitly marked as decorative so screen readers don’t announce noise.

One-handed reachability

Primary actions live in thumb-reach zones on the bottom half of the screen. Settings, account, the child switcher trigger — all within reach while holding a baby.

What is coming next

Accessibility is a build that never finishes. These are the items on our forward edge as of today — what we have not yet shipped, sized honestly:

Full AX5 Dynamic Type re-walk on every screen

The operator runbook step that walks every surface at Accessibility text size 5 lands before production submission. Edge layouts that need re-flow tweaks land in that pass.

Xcode Accessibility Inspector pass

A surface-by-surface pass through Apple’s Accessibility Inspector that catches every implicit-label gap and every focus-order ambiguity. Part of the same pre-production runbook.

Spanish-locale screen-reader pass

When the Spanish locale lands, we run a parallel VoiceOver / TalkBack pass in Spanish before that locale ships to caregivers.

Tell us where we missed

If you use assistive tech and something doesn’t work the way you expected, that’s the single most valuable piece of feedback we can get. Email research@resilient.kids and we read every reply.