Projects / Education

Learn French

How do I stop forgetting the French I learned?

A spaced repetition app for learning French. It schedules reviews with FSRS-5, adjusts the amount of help per exercise based on how you are doing, and practises each item through eleven different game types.

ForLearners working through French vocabulary and grammar on their own.
SolvesFlashcards alone do not catch why you got something wrong, and they give the same help whether you are struggling or not.

What is it?

A French learning app built around spaced repetition. Each session plans a set of items, serves them through a mix of games, grades the answers, and feeds the results back into the schedule and the learner model.

Scheduling and scaffolding

Review timing uses the FSRS-5 algorithm, which tracks stability, difficulty and retrievability for every item. Each game has four scaffold levels that move with your performance: consecutive wrong answers raise the level, and at the top level a teaching card steps in to explain the item before you try again.

Errors are classified by pattern (orthographic, semantic, morphological, syntactic, pragmatic) so the app can show weak areas rather than just a count of misses. Levels unlock along the CEFR scale from A1 to C2 once mastery of the current level passes 70%.

Eleven games

Translate, cloze, sentence construction, definition matching, idiomatic expressions, odd one out, context guess, spot the error, transform (conjugation and agreement), dictogloss and naturalness. The same vocabulary and grammar items show up across games, so recall is practised from several directions.

Dashboard

The home page shows a knowledge state ring (new, learning, review, mastered), an eight-day retention forecast, a 365-day activity heatmap, a weak areas list with direct practice links, and progress toward the next CEFR level.

Stack

Astro with SSR, React and Tailwind on the front end, Cloudflare D1 for storage, deployed to Cloudflare Workers, with Bun as the runtime for local development.