33
Language packs available in the browser-served content set.
Learning Product Case Study
Local-first multilingual typing trainer designed around adaptive practice, keyboard-layout analysis, and privacy-first progress tracking without accounts or remote sync.
33
Language packs available in the browser-served content set.
0
Accounts, remote sync, or telemetry required for progress tracking.
3
Local storage layers used for preferences, history, and install hints.
Many typing products optimize for accounts and cloud continuity, but that trade-off can weaken privacy, local ownership, and multilingual depth for learners who want more than a simple speed test.
I designed and built the adaptive practice flows, local progress architecture, multilingual learning surfaces, and browser-first product experience.
NullKeys ships as a privacy-first typing product that combines adaptive review, multilingual practice, and local archive portability without introducing a cloud-backed learner profile.
The app goes beyond a one-page typing test with keyboard-layout exploration, replayable session history, benchmark flows, and manual export/import for local ownership of progress.
GitHub Actions runs post-deploy verification every 30 minutes with live verification alerts and automatic recovery closure. Authoritative uptime monitoring should run in Cloudflare Health Checks or an external synthetic monitor.