Oeli
What does and does not work accessibly in this game, checked against what Apple, Google and WCAG 2.2 AA ask for.
Summary
This game does not fully meet WCAG 2.2 AA yet.
Apple features with Yes: Dark Interface, Differentiate Without Color Alone, Reduced Motion.
WCAG 2.2 AA, 55 criteria: 27 meets, 22 partly, 0 does not meet, 1 not tested, 5 not applicable.
What does not work yet
- Games cannot be played with a screen reader. Parents can hide them.
- Fast games have no pause and no slow mode. "I can't do this" is always available.
- Listening exercises have no alternative for people who cannot hear.
- Text in the play areas does not grow with your text size and has not been measured for contrast.
- In For parents, a drop-down sticks out on a narrow screen.
- A parent chooses the calm background behind the PIN, unless the device already asks for less motion.
- The video part has not been assessed: it is not open yet.
- The apps have not yet been tested on a real device with VoiceOver or TalkBack.
- Nobody with a disability has tested Oeli yet, and there was no external assessment.
How to set it up
- Web app: For parents (with PIN) › Reading comfort and read-aloud: larger letters, Lexend, more spacing, calm background, motion off, read every question aloud, slower read-aloud.
- Web app: For parents › Accessibility: Colour blind (patterns for each colour) and hide visual tasks.
- Every screen with a top bar has a Sound button.
- Website: Display button at the top: text, font, contrast, motion, underlined links.
- The app and website follow the device's light or dark setting and its reduced motion setting.
What we checked
Apple asks that all common tasks can be done with a feature. These are the common tasks of this game.
- Signing in as a parent (passkey, Apple, email) or as a child (first name and personal code)
- Adding and choosing a child
- Choosing and completing a practice set
- Playing games
- Drawing, colouring and writing
- Oeli's forest: dressing Oeli and buying items
- For parents: progress, reading comfort and settings per child
Apple: features on the App Store
A feature only gets Yes if you can do all common tasks with it. iPhone and iPad.
- VoiceOver No
The code has labels and extra buttons for colours and dots, but games are a single image that VoiceOver cannot operate. Never tested on a real device.
- Voice Control No
Buttons have names, but games and drawing work by swiping on a play area. Not tested yet.
- Larger Text No
Most text follows Dynamic Type, but text inside the play areas does not. 200% has not been tested on a device yet.
- Dark Interface Yes
45 of the 54 colours have a dark variant; the other 9 are fixed colours. The app follows the device setting.
- Differentiate Without Color Alone Yes
Correct and wrong answers each have a symbol. The Colour blind setting gives every colour a symbol, including in the play area.
- Sufficient Contrast No
The colour tokens pass on the web, but the play areas and the app on a device have not been measured.
- Reduced Motion Yes
Follows the device setting and the per-child "Motion off" option (OeliBeweging). Still to be checked on a device before submission.
- Captions Not applicable
No video.
- Audio Descriptions Not applicable
No video.
Google: Android
Google asks, among other things, for descriptions for TalkBack, touch targets of at least 48 dp, enough contrast and text that scales.
This Android version has not been released yet. We checked the code.
- TalkBack Partly
Screens have labels, and colours and dots have extra buttons. Games are a single image. Not tested on a device.
- Switch Access Partly
Buttons can be reached, but games and drawing need swiping. Not tested.
- Voice Access Partly
Buttons have names, play areas do not. Not tested.
- System font size up to 200% Partly
Text uses sp and follows fontScale, but text inside the play areas does not. Not tested.
- Target size of at least 48dp Partly
13 places in the code are set smaller than 48dp; not every one of them is a button.
- Contrast Partly
Same colour tokens as the web. Play areas have not been measured.
- Remove animations Yes
Reads the device's animation scale and stops the motion.
- Not colour alone Yes
Correct and wrong answers have a symbol, and there is the Colour blind setting.
WCAG 2.2 AA
WCAG was written for the web. For apps we follow the guidance in WCAG2ICT. Level AA has 55 criteria.
1. Perceivable
- 1.1.1 Non-text content Level A Partly
Questions, buttons and drawings have a text alternative. In the games, the play area only announces the task, not what is happening.
- 1.2.1 Audio-only and video-only (prerecorded) Level A Partly
Stories are also available as text. The listening exercises (claps, tones) and "What do you hear?" in the language exercises have no alternative for people who cannot hear.
- 1.2.2 Captions (prerecorded) Level A Not applicable
The videos are not yet open to everyone. No video for regular users.
- 1.2.3 Audio description or media alternative (prerecorded) Level A Not applicable
The videos are not yet open to everyone.
- 1.2.4 Captions (live) Level AA Not applicable
No live video.
- 1.2.5 Audio description (prerecorded) Level AA Not applicable
The videos are not yet open to everyone.
- 1.3.1 Info and relationships Level A Meets
axe found no errors on 104 screens. Every screen has one h1; help and errors are linked to their fields.
- 1.3.2 Meaningful sequence Level A Meets
The reading order follows the code. Checked with Tab on the home screen and on an exercise.
- 1.3.3 Sensory characteristics Level A Partly
Some tasks rely on colour or position, such as "Start at the green dot" in the writing exercises.
- 1.3.4 Orientation Level AA Meets
No fixed screen orientation: the manifest is set to "any". Tested in portrait and landscape.
- 1.3.5 Identify input purpose Level AA Meets
Email, password, codes and the contact form have autocomplete.
- 1.4.1 Use of colour Level A Partly
Correct and wrong answers and progress show more than colour. Patterns for each colour are only switched on through a parent's setting.
- 1.4.2 Audio control Level A Partly
There is a sound button on almost every screen, and read-aloud is off by default. The celebration when a goal is reached plays automatically and has no sound button.
- 1.4.3 Contrast (minimum) Level AA Partly
968 texts were checked with a pixel measurement, in light and dark: only the "beheer" (manage) link fails (about 3.3:1). Text in the play areas and 38 texts on the website have not been measured.
- 1.4.4 Resize text Level AA Partly
Zooming in works; the page does not block it. Text in the play areas does not get larger, because the area shrinks to fit the available space.
- 1.4.5 Images of text Level AA Partly
The app and website use real text. In the play areas, numbers and letters are drawn as an image.
- 1.4.10 Reflow Level AA Partly
No horizontal scrolling at 320 pixels, except in For parents: the Theme of the week drop-down sticks out by 22 pixels.
- 1.4.11 Non-text contrast Level AA Meets
Field borders, buttons and focus outline reach 3:1 in light and dark (from the colour tokens and the computed style).
- 1.4.12 Text spacing Level AA Partly
With extra text spacing no text disappears, but at phone width you have to scroll sideways on the home screen and in For parents.
- 1.4.13 Content on hover or focus Level AA Meets
No custom pop-ups on hover or focus. There are only ordinary browser tooltips.
2. Operable
- 2.1.1 Keyboard Level A Partly
Exercises, games, colouring and dot-to-dot work with the keyboard. Moving stickers on a card only works with a mouse or finger. Free drawing and writing fall under the exception.
- 2.1.2 No keyboard trap Level A Meets
Dialogs keep the focus inside and close with Escape. Games do not trap Tab.
- 2.1.4 Character key shortcuts Level A Partly
Typing numbers works on the whole exercise page without a way to turn it off. Letters only work in the build area when it has focus.
- 2.2.1 Timing adjustable Level A Partly
Exercises have no time limit. Fast games have no pause and no slow mode, only "I can't do this". Notifications from friends disappear after 7 seconds.
- 2.2.2 Pause, stop, hide Level A Partly
The background stops with the device setting or "Motion off", but that choice sits behind the PIN. The 3D Oeli keeps moving slightly even then.
- 2.3.1 Three flashes or below threshold Level A Not tested
The code shows short flashes on a mistake (0.35 seconds) and no repeated flashing. Not measured with a flash test.
- 2.4.1 Bypass blocks Level A Meets
The website has "Skip to content". In the app, focus goes to the heading of each screen.
- 2.4.2 Page titled Level A Meets
Every screen has its own title, such as "Oeli: Tafels, vraag 1 van 8". Checked on 104 screens.
- 2.4.3 Focus order Level A Partly
Focus is correct after a new screen and after an answer. After a sign-in error, focus drops out of the field and Tab starts again at the top of the page.
- 2.4.4 Link purpose (in context) Level A Meets
Link texts say where they go; axe found no errors.
- 2.4.5 Multiple ways Level AA Partly
The statement lists this as not applicable, but the app has many screens. There is no search or overview; most screens have one route.
- 2.4.6 Headings and labels Level AA Meets
Headings and labels say what they are about.
- 2.4.7 Focus visible Level AA Meets
A clear 3-pixel outline on everything that receives focus, including the selected bubble in the play area.
- 2.4.11 Focus not obscured (minimum) Level AA Partly
The website leaves room below the bar. In the app, a notification from a friend can cover a button at the bottom for up to 7 seconds.
- 2.5.1 Pointer gestures Level A Meets
Swiping and dragging have a tap or buttons: checked for Treintje, Eikeljacht, Blokken, Verdubbelt and Voetbal.
- 2.5.2 Pointer cancellation Level A Partly
Buttons work on release. In games such as Bubbels, the tap counts as soon as you press down and you cannot cancel it.
- 2.5.3 Label in name Level A Partly
Mostly correct. In the build area, four shape buttons are missing their visible text in the name.
- 2.5.4 Motion actuation Level A Not applicable
Nothing works by shaking or tilting.
- 2.5.7 Dragging movements Level AA Meets
Everything you can drag can also be done by tapping. Free drawing and writing fall under the exception.
- 2.5.8 Target size (minimum) Level AA Partly
axe found no errors on buttons. At 320 pixels, some dots (23 pixels) and narrow parts of a colouring page (15 pixels high) are smaller.
3. Understandable
- 3.1.1 Language of page Level A Meets
The page and app are marked as Dutch.
- 3.1.2 Language of parts Level AA Meets
French, English and German are marked up in all 15 language exercises that were checked.
- 3.2.1 On focus Level A Meets
No code that changes anything on focus.
- 3.2.2 On input Level A Meets
Making a choice does not move you elsewhere.
- 3.2.3 Consistent navigation Level AA Meets
Back, Stop and Sound are in the same place in the top bar.
- 3.2.4 Consistent identification Level AA Meets
The same functions have the same name.
- 3.2.6 Consistent help Level A Meets
The help address is in the same place on the website and the separate pages. Inside the app itself there is no help address.
- 3.3.1 Error identification Level A Meets
Errors are read out as an alert (role=alert) and shown at the field.
- 3.3.2 Labels or instructions Level A Meets
Every field has a label; axe found no errors.
- 3.3.3 Error suggestion Level AA Meets
The messages in the code say how to put it right, for example for the PIN.
- 3.3.4 Error prevention (legal, financial, data) Level AA Meets
Deleting a child or an account asks for confirmation first.
- 3.3.7 Redundant entry Level A Meets
Only a new PIN or password has to be typed again to confirm it.
- 3.3.8 Accessible authentication (minimum) Level AA Meets
Passkey, Apple, or email with password. No captcha, pasting is not blocked anywhere and codes have one-time-code.
4. Robust
- 4.1.2 Name, role, value Level A Partly
Buttons, tabs and colour swatches have a name, role and state. A play area is a single image, so the state of the game cannot be read by a screen reader.
- 4.1.3 Status messages Level AA Partly
Correct, wrong and hints are read out. In the games, only Bubbels says anything during play. An error message starts with a stray question mark ("?Bijna").
How we checked this
We reviewed the source code of the game on the date above. This is our own review, not an audit by an independent party, and we have not yet tested this on devices with assistive technology. That is why it says "Not tested" where the code alone gives no answer.
We update this page whenever the accessibility of the game changes.
Running into a problem, or is something wrong here? Email us at hello@studionolu.com.