Inspiration Learning a new language is hard, but most apps either feel like drilling flashcards (Duolingo, Anki) or lack personalisation. I wanted an AI‑powered tutor that generates fresh, level‑appropriate exercises on demand and helps you remember words through spaced repetition – all while giving instant grammar feedback. MeDo’s ability to call LLM plugins made dynamic content generation possible without backend complexity.
What it does AI Language Practice helps English learners (A2, B1, B2 levels):
Daily fill‑in‑the‑blanks challenge – AI generates a short dialogue with 3 missing words based on user’s level.
Instant feedback – after submitting, AI explains correct/incorrect answers with grammar tips.
Flashcard system with spaced repetition – save unknown words; flashcards appear for review after 1, 3, 7, 14 days.
Pronunciation hint – click 🔊 to hear any word spoken (Web Speech API).
Progress tracking – streak of correct answers, accuracy percentage, weekly performance chart.
How we built it Single master prompt in MeDo describing React + Tailwind + Supabase + LLM plugin (ChatGPT/Claude).
Iterated 3 times to add:
Loading spinner for AI challenge generation and answer checking.
Collapsible mobile menu (hamburger → side drawer).
4‑step first‑user tour (level selector, generate button, blanks, flashcards link).
Integrated LLM plugin via MeDo marketplace – prompts engineered to return JSON with dialogue, answers, and grammar tip.
Used Supabase for profiles, challenges, challenge_attempts, flashcards tables with RLS.
Web Speech API for pronunciation – no extra plugin needed.
Deployed with one click to public URL.
Challenges we ran into LLM JSON formatting – sometimes the AI returned malformed JSON. Fixed by adding a system prompt: “Return ONLY valid JSON, no extra text” and a fallback parser.
Spaced repetition logic – implementing the review intervals correctly (1,3,7,14 days) required careful date comparisons in JavaScript and Supabase queries.
Pronunciation on mobile – Web Speech API requires user interaction; we added a “allow speech” permission prompt on first click.
Generating distractors – for multiple‑choice flashcards, we initially called LLM every time (slow). Switched to generating wrong options by modifying the word length or using a small local dictionary.
Accomplishments that we're proud of A complete AI tutor that creates unlimited personalised exercises – no pre‑written content.
Spaced repetition flashcards work automatically – users never have to decide what to review.
The app feels faster than expected: AI calls take 2–4 seconds, and we cache recent challenges.
Tested with 3 ESL learners – they preferred daily AI challenges over static lessons.
What we learned MeDo’s LLM plugin is powerful for content generation, but you must constrain output format strictly.
Spaced repetition is simple to implement if you store next_review_date and filter by <= TODAY.
First‑user tour dramatically reduces confusion – users immediately understood level selection and flashcard saving.
Combining AI (for challenges) with deterministic logic (for flashcards) gives the best of both worlds.
What's next for AI Language Practice More languages – add Spanish, French, Japanese using the same LLM prompt (just change language parameter).
Voice input – let users speak the missing words instead of typing (using Web Speech recognition).
Adaptive difficulty – if user gets 3 challenges in a row perfect, automatically suggest moving to next level.
Grammar explainer videos – embed short YouTube lessons for common mistakes (e.g., “their/there/they’re”).
Export flashcards to Anki – CSV download for power users.
Daily streak leaderboard – friendly competition with friends.
Built With
- ai
- medo
Log in or sign up for Devpost to join the conversation.