The core loop of talking to an AI in your target language, being corrected and reviewing the repeats is a few hundred lines around a speech-to-text model, an LLM and a voice, and an agent can get a working version running in an evening. The weekend goes into making it worth learning from: low-delay turn-taking, corrections that don't interrupt, and spaced review of your own mistakes. Speak's curriculum, pronunciation feedback and daily structure are what the subscription buys, and your own build is a practice partner rather than a course.
Before you buildSpeak has a 7-day free trial and no free plan after it. Use the trial in your own language first to see how much of the value is the course and how much is the conversation.
Build me a personal speaking tutor to replace Speak. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves http://localhost:4870; localhost counts as a secure origin, so the browser allows the microphone. - Storage: better-sqlite3 in ./data/tutor.db: a learner profile (target language, native language, level A1 to C1), sessions, turns with the audio file path, corrections, and a mistakes table with review dates. - Conversation: voice-activity detection in the browser (`@ricky0123/vad-web`) ends each turn; send the audio to speech-to-text (OpenAI or Deepgram, chosen in .env), then to an LLM with a tutor persona set to my level, then speak the reply with the TTS from .env. Replies stay under 40 words and end with a question. - Scenarios: ten role-play cards (ordering food, a doctor visit, a job interview, and so on) in an editable YAML file, each with goals the tutor ticks off, plus free conversation. - Corrections: after each of my turns a second LLM call returns JSON, validated with `zod`: the corrected sentence, an error type (grammar, word choice, register, spelling) and a one-line explanation in my native language. Show it under the turn without interrupting the talk. - Review: every correction becomes an SM-2 card. A daily review page asks me to say the corrected sentence aloud and passes it when the transcript matches after normalising case and punctuation. - Progress: minutes spoken per day and the ten most repeated mistakes this month. - Single user. No accounts, no telemetry, local-first: only speech, text and TTS requests leave the machine, and the README lists exactly what each one sends. - Out of scope: a fixed curriculum, pronunciation scoring from audio, mobile apps, streaks. - README: setup, the .env keys, the cost of the first ten turns, and a warning that a transcript hides accent errors, so this tutor cannot tell you how you sound.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Speak.
Add an offline mode to the speaking tutor in this folder. Requirements: - A PROVIDER=local setting that swaps the three services: `faster-whisper` through a small Python sidecar for transcription, an Ollama model for the tutor and corrections, and Piper for the voice. - A `npm run doctor` command that checks each local service responds, prints the model names and the measured time from end of speech to first spoken word. - Fall back to the hosted providers only when I press a button, never automatically. - Keep the correction JSON schema identical so the review cards work in both modes. - Update the README with model downloads and a table of delay per setup.
Add shadowing practice to the speaking tutor in this folder. Requirements: - Pick a card from the review deck, play it with TTS at 0.8x and 1x, and record my repeat. - Transcribe with word timestamps and compare to the target: list missing, extra and swapped words, my words per minute, and pauses longer than 700 ms. - Save each attempt, show a trend per card over time, and promote a card back to daily review when it fails twice in a row. - Say plainly in the UI that this checks words and timing, not accent. - Update the README.
Add article lessons to the speaking tutor in this folder. Requirements: - Paste a URL or text; fetch it with `@mozilla/readability`, cap it at 1,500 words and store it. - Generate a lesson from it: ten words worth learning with example sentences from the text, five discussion questions at my level, and a short role-play card based on the topic. - Add the words to the review deck, and let the tutor open a conversation that stays on the article's topic and checks the goals off. - Show the source URL on every card made from it. - Update the README.
Speaking out loud is the hard part of a language, and Speak gives a nervous learner a patient partner and a path through the material. The structure and the daily habit do more than the model under it, and a plain chatbot gives you neither.
Estimate · An estimate for 15 to 20 hours of talking a month at typical per-minute rates for transcription, a mid-size model and a voice; check your providers' current pricing. The build is token usage on your agent plan.
Checked 2026-10-20 against Speak's docs: 1, 2, 3, 4, 5, 6, 7, 8
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Premium | $17.99 | $7 | Full curriculum, situational roleplay, Ask Speak Tutor, Smart Review. Made For You custom lessons are capped at 3 a day and Speak Tutor's personalized lessons have a daily limit. |
| Premium Plus | $39.99 | $13.75 | Everything in Premium plus unlimited Made For You lessons, unlimited personalized Speak Tutor lessons, a personalized study plan and review aimed at your frequent mistakes. |
A 7-day free trial; there is no ongoing free plan.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: A written curriculum that takes you from zero in a set order, Pronunciation feedback aimed at learners rather than a transcript.
About $17.99 a month on the Premium, billed monthly plan, $215.88 a year (checked 2026-10-20).
A written curriculum that takes you from zero in a set order; Pronunciation feedback aimed at learners rather than a transcript; Native iPhone and Android apps with reminders; Made For You lessons built from your own mistakes; Course content for several languages in one app. If any of those matter to you, keep paying.
Yes: FreeLingo (open source), Immergo (open source), Anki (open source).