HABLAR
A spaced-repetition Spanish learning app built around shadowing instead of grammar drills — I built it to learn the language myself.
OVERVIEW
I needed to learn Spanish fast by listening and repeating, so I built a spaced-repetition app around shadowing rather than grammar drills: SM-2 review scheduling, an offline-first installable PWA with on-device text-to-speech, and full CRUD for user-authored sentences.
What started as a tool on my own phone is now installable and used by friends learning alongside me.
ROLE & CONSTRAINTS
Solo build on Next.js 16 and React 19, with MongoDB backing user-authored sentences and progress. The two constraints that shaped it: it had to work offline (an installable PWA, not just a website), and review scheduling had to be spaced-repetition-correct — SM-2 — rather than a naive daily list, since the whole premise was learning through repetition that actually adapts to what I already knew.
RESULTS & LESSONS
It works well enough that it’s no longer just my tool — friends learning Spanish alongside me installed it too. Building the thing you personally need daily is a different discipline than building for an audience: every rough edge gets found immediately, by you, because you can’t avoid your own app.