Dino Learn
A web-based learning app for preschoolers — six bite-sized mini-apps covering counting, letters, phonics, rhyming, shapes, and writing your name, each with Learn and Test modes. No build step, no backend.
What it teaches
Six mini-apps aimed at kindergarten-readiness gaps for ages 3–6:
- Counting — 1–10 and 11–20, with place value shown as “ten pack” groupings.
- Letters — upper- and lowercase recognition with object associations (“A is for Apple”).
- Phonics — 20 consonant-vowel-consonant words with sequential sound blending.
- Rhyming — 26 word-pair comparisons, including all pairs from a real kindergarten screener.
- Shapes — nine classroom shapes, drawn proportionally so corners vs. curves are obvious.
- Write My Name — trace your own name over faded letter guides.
Every app follows the same two-mode structure: Learn mode presents material sequentially with audio guidance; Test mode checks it — either a Listen Test (tap the matching tile after hearing it) or a Look Test (the child answers out loud and a grown-up taps to confirm; no microphone needed).
How it’s built
Zero dependencies, no backend, no npm — “double-click index.html and it works.” Graphics are inline SVG plus emoji; all audio is generated by the Web Speech API, so there are no recordings to manage. Navigation timers route through a centralized scheduler so the back button can cancel pending actions, and name-tracing progress is stored in localStorage with error handling for Safari’s private-browsing mode.
// more games
DinoGrow
Updated 2026-07-03
A 3D dinosaur growth game for kids — start as a hatchling and eat everything in sight to grow into a GIANT. 11 playable dinosaurs with signature abilities across eight themed levels, each with its own objective and boss. No build step; pure Three.js.
Flight School
Updated 2026-07-18
A cargo-flying game for little pilots: pick a pilot, load a creature, and fly it to Grandma's house, the mountain, or the island, then airdrop it — it stays there forever. Built on an honest flight model (pull up too hard and you stall) in a single self-contained Three.js file. No crashes, no score, no losing.