skip to main content
back

accessibility

this page lists what lowkey type actually does today to fit different ways of seeing, moving, and typing. it's deliberately plain. if something isn't here, it isn't supported yet — we'd rather say less than overclaim.

seeing

readable font (atkinson hyperlegible) and four color palettes: default, sepia (warm + low glare), and two color-blind-safe sets (red-green and blue-yellow). a high-contrast mode that pushes text past wcag aaa contrast and drops the blur. four text sizes that grow the typing line and the on-screen keyboard together. every accuracy band on the heatmap also carries a shape, so it reads without color. forced-colors / windows high-contrast mode is respected.

moving

reduced-motion mode that disables the background drift, the next-key pulse, and entrance fades. respects the system 'prefers-reduced-motion' setting by default. no animation in the app cycles faster than once a second, well under the wcag 2.3.1 flashing limit.

typing

an on-screen keyboard with real, focusable, labeled buttons — 44x44 px touch targets, sticky shift, backspace, the same scoring + adaptive path as a physical keystroke. auto-detected on touch devices; turn-on / turn-off in settings. repeat tolerance drops accidental double-presses and held-key auto-repeat. no-pressure pacing hides the speed pill, drops the error shake, and lets you mark any exercise done whenever you want — skipped exercises don't touch the per-key data.

reading the keyboard

the next-key hint has four levels — auto, strong, subtle, off. auto fades per key as you settle a letter (the more accurate you get, the quieter the cue becomes). the on-screen keyboard relabels itself per keyboard type (windows / mac / chromebook) and scales with your chosen text size.

language

the page sets html lang per locale (english / español). practice text that doesn't match the page locale (e.g. english practice on the spanish ui) is tagged with its own lang so screen-reader voices know to switch.

privacy

no account, no analytics, no ad networks, no third-party scripts. your progress lives in localStorage and IndexedDB on this device. clearing them resets the app to a fresh state. no part of practice is sent over the network.

what isn't here yet: a verified screen-reader pass, self-voicing / by-ear operation, switch-scanning beyond what native assistive tech can drive through the keyboard buttons, and a formal wcag / vpat statement. when those land, they'll show up on this page first.

open settings →