A Dad Built a Flashcard App to Replace the Chaos of After-School English Review
AI-assisted coding makes it viable to build hyper-specific tools for a single family — something previously too expensive to justify. The architecture choices (local-first, free-tier cloud, browser TTS, Emoji-first images) show a repeatable pattern for personal tools that must stay cheap, resilient, and simple enough for non-technical family members.
After-school English review meant scrolling through WeChat group messages to find videos, dragging progress bars, and pausing for each word — a process that lost a child's attention fast. Existing apps like Baicizhan or Oulu Dictionary were either too cluttered or too adult-focused for a preschooler's needs. The solution was a minimal Vue 3 app that parses the teacher's daily text into clean word and sentence cards, assigns Emoji or searchable images, and auto-reads each card using the browser's speech synthesis. A three-tier image fallback — system Emoji, Openverse/Wikimedia search, local upload with Canvas compression — keeps every card visually clear without depending on paid APIs. Data lives in localStorage first for offline resilience, then syncs to Supabase PostgreSQL through Edge Functions with a family edit code and revision-based conflict avoidance. The frontend deploys to GitHub Pages, keeping hosting free and separate from the data layer. The result isn't a curriculum; it's a focused tool that turns ten minutes of daily friction into a few taps a child can manage alone.
Personal-tool development inverts commercial logic: the hardest step is shrinking the requirement until it fits one family's actual routine, not adding features.
AI's role here is as a one-time content organizer during setup, not a runtime dependency — the playback path stays deterministic and debuggable.
The three-tier image strategy (Emoji → open search → local upload) is a practical model for any personal tool that needs visuals without ongoing costs.
Migrating from Cloudflare to Supabase mid-project highlights that free-tier reliability, not feature set, often dictates the final stack for solo builders.
Keeping a family edit code instead of full auth avoids the complexity of user management while still preventing public writes.
The discussion splits between admiration for the effort and skepticism about the approach. One side sees the project as an example of extreme academic pressure, while another questions whether a flashcard app can compete with the engagement of animated content for a preschooler.
Isn't this app a bit lacking in fun for kindergarten kids? Wouldn't watching English cartoons be more effective?