Designing a French pronunciation tutor that learners and teachers can trust
One phrase attempt, built from the same components as the app. The learner's speech appears as it is recognised, the tool reads back what it heard word by word, and the score lands with the words to work on beside it.
The problem
Learners can practise grammar and vocabulary anywhere, but not speaking. Feedback on pronunciation comes only from a tutor, and only during a lesson.
The approach
A practice tool built on deliberate practice and working-memory research. It scores speech word by word, explains each miss, and shows the learner's teacher what to work on next.
The outcome
In use by a French teacher and about 10 students, with recognition tested by native French speakers. English is in testing and Italian is planned on the same core.
Classes, apps and private tutoring cover grammar and vocabulary well. Speaking is the gap. A classroom cannot give each learner individual spoken feedback, apps are built around motivation rather than oral practice, and shadowing apps let a learner repeat a native speaker without ever finding out whether they got it right. Only a tutor closes that loop, in a lesson that is scheduled and paid for. The gap was first observed directly while learning French, then tested with a teacher and their students.
Pronunciation is a skill acquisition problem rather than a knowledge problem. The bottleneck is perceptual-motor: producing sounds that do not exist in the learner's first language. That kind of skill is built through deliberate practice, meaning repeated attempts with corrective feedback that says specifically what to adjust.
French raises the stakes. The uvular R, the /y/ vowel and the nasal vowels do not exist in English, so a learner cannot correct them by ear, and liaison and rhythm mean a word said correctly on its own can be lost inside a sentence.
Listen
A native voice reads the phrase. Liaisons are marked, and the audio can be slowed down.
Speak
The learner says it out loud, and their words appear as they speak.
See what you said
Each word is lined up against the target and scored, so it is clear which ones landed.
The core loop: listen, speak, see what you said. The brand mark turns into blue waves while the French audio plays and gold waves while the learner speaks.
The paragraph exercise is built on a model of working memory. The phonological loop holds only so much spoken language at once, so the learner builds a paragraph one phrase at a time: the first phrase until it passes, then the first and second together, until the whole paragraph is spoken. The earliest phrases are repeated many times because of the structure rather than as a drill.
The pass mark falls as the spoken chunk grows, from 75% for one sentence to 50% for four or more, because reading several sentences aloud in a new language is tiring and a fixed threshold turns a guide into a barrier. The learner can always move on. When they pass consistently the tool suggests the next level, and after repeated misses it suggests stepping back, but the level only changes when the learner chooses. They know whether a session was hard because of the French or because of the day.
During an attempt the interface stays minimal: a live transcript confirms the tool is listening without competing with the reading. Full analysis appears afterwards, when the learner has attention to spare, and leads from the sentence to the word to the sound.
A learner marked wrong for a word they said correctly does not blame the software. They decide they said it wrong, and stop trusting either the tool or themselves. Every scoring decision was weighed against that risk, and accuracy was checked by native French speakers: when a native speaker is marked wrong, the fault is in the rules.
Two problems produced most of the false errors. Speech recognition expands spoken elisions, so j'ai arrives as je ai, a form that does not exist in written French. And French verb endings collide by sound: parlez, parlé and parler are pronounced the same, but recognition returns whichever spelling it prefers. Both are handled by deterministic rules applied before scoring, kept out of the language model so they stay fast and predictable. Dictation skips the sound rules, because there spelling is the skill being tested.
The first version offered practice on the uvular R, open and closed e, and rhythm. Word-level scoring cannot hear them: a learner who says regarder with an English R still gets regarder back. The scores looked precise and meant nothing, so those targets were removed until phoneme-level grading can assess them.
Feedback follows the same rule. If it cannot be consistent and useful, it is left out. For sounds that do not exist in English it gives the word, what was heard instead, and a physical cue such as lips rounded for "ou", R at the back of the throat.
- 1What was said, and why it missedThe word heard instead, and the likely cause in plain English.
- 2The sound and the cadenceLiaisons show where the words run together; syllables show the beat, with the stress at the end of each group.
- 3Drill it until it sticksTen focused attempts on one word, or save it to the practice list for later.
- 4Patterns, not just wordsAfter a paragraph, the habits that repeat, so the cause gets fixed once.
Feedback on a miss, in four layers: what was heard and why, how the whole phrase links and where its stress falls, a ten-attempt drill on the word, and the pattern that repeated across a paragraph.
The vraiFrench mark is a helium atom: a nucleus, an orbit and two electrons. In the product it does more than identify the brand. It is the single indicator for everything the system is doing, so the learner reads one familiar shape instead of a separate spinner, microphone meter and progress animation, and attention stays on the French.
Colour carries the meaning. Blue is always the French voice and gold is always the learner, from the waves during practice to the ring around the record button, so it is clear at a glance whether to listen or to speak. The same mark assembles at sign-in and marks the end of a session, which keeps the product consistent from the first screen to the last.
Each state as it appears in the app, looping. Sign-in and results are replayed here; in the app they follow the learner's own form and score.
The proof of concept reached live users in one week. Over the following five months a French teacher and about 10 of their students used it between and during lessons, and what they did shaped the product more than self-testing had.
Observed
Most learners practised on phones, not laptops.
Mobile became its own layout, and the interface moved from a developer-style design system to a Material 3 style learners already know, so the UI would not add friction.
Observed
Beginners found the listening dialogues too full of slang.
An everyday register was added for A1 and A2, alongside conversational and professional.
Observed
The teacher needed to know what to cover next, not more charts.
The dashboard opens on one lesson focus. Each recommendation shows its evidence, and stuck sentences become a lesson plan.
Observed
Practice during lessons inflated students' engagement figures, and younger students had no email address.
Lesson activity is tracked separately from independent practice, and teachers can add child accounts that only work in lessons they run.
The teacher's view, shown with illustrative data: each student's average score, trend and sessions this week, and a single focus for the next lesson.
"When my students see their accuracy score, it gives them something concrete to measure their progress, and the motivation to keep trying."
French teacher, pilot
"I'm impressed by how accurately it hears what I'm saying as a native French speaker. It shows a real intelligence in recognising the language."
French teacher, pilot
Listening
Dialogues between two named speakers, written to sound overheard, at a register the learner picks. Casual French lives here because listening is never scored.
Vocabulary
Oral first: hear the word and its French definition, recall it by ear, then review it on a spaced schedule of 1, 3, 7, 14 and 30 days.
Pronouns
Treated as a perception problem first: listening tasks that cannot be answered without hearing le, la or lui, then saying it.
The design decisions, the learning science and the scoring rules came from the designer; Claude Code handled implementation, and Mistral served as a French-language reference. Each problem was diagnosed and decided before any code was written, then tested in real practice the same day. Homophones showed where that line sits: rules kept failing until the problem was treated as linguistic rather than technical.
Cost was a design constraint for a tool meant for individual learners and independent tutors. Audio is synthesised once and cached permanently, generated content is banked and reused across learners, and a monthly budget guard keeps voice synthesis within the free tier.
The technical foundation is in place. Speech capture, scoring, feedback, accounts, analytics and the teacher dashboard run on one core, with a profile for each language. The remaining work is linguistic: each language needs rules for the sounds its learners find hardest, and the French R and the English R are different problems. Each rule set is tested with native speakers of that language before learners rely on it. English is in testing now and Italian is next.