I Built a Personal LLM French Tutor with Spaced Repetition and Weak-Spot Tracking

A developer built a personalized LLM-powered French tutor after canceling a $200/month private tutor. The tool combines a text-based knowledge base tutor using Claude and a speech practice app called Causons. The key innovation is using the SM-2 algorithm (same as Anki) to schedule reviews based on the forgetting curve, and tracking specific weak spots with precise error logs.
The knowledge base tutor manages a JSON file storing every grammar topic studied, including last review date, confidence rating (1-4), specific error patterns, and next due date. Before each session, the Claude-powered system reads the file, identifies due topics, and generates exercises in escalating difficulty: multiple choice → fill-in-blank → translation → free production. After the session, results are written back to update intervals. Topics nailed four times in a row come back in three weeks; blanking on a topic brings it back the next day.
The weak-spot tracker logs specific constructions, e.g., "uses wrong auxiliary with motion verbs when sentence is negative — since 2026-04-12" instead of a vague "trouble with passé composé." The next session generates exercises targeting exactly that construction.
The speech tutor (Causons) is a browser app with a mic button. Users speak in their target language, get AI responses in the same language, and corrections only for objectively wrong grammar—e.g., things a native speaker would never say. Transcription artifacts, register choices, and colloquial expressions are left alone.
Who it's for: Developers learning a language who want a customizable, cost-effective alternative to human tutors with data-driven spaced repetition and fine-grained error feedback.
📖 Read the full source: HN LLM Tools
👀 See Also

Hybrid RAG for Local Agent Memory with OpenClaw, Ollama, and nomic-embed-text
A developer implemented hybrid RAG retrieval for AI agent memory using OpenClaw with Ollama and nomic-embed-text, combining 70% vector similarity with 30% BM25 keyword matching. The setup runs locally without external APIs and includes MMR deduplication and temporal decay weighting.

Using Claude to Audit Email Systems for Missing User Scenarios
A developer used Claude to analyze their database schema and email triggers, identifying four critical gaps: no follow-up for unverified signups, no acknowledgment for downgrades, no notification for accepted team invitations, and no warnings for approaching plan limits.

OpenClaw Agent Voice Call Demo with Streaming TTS and Barge-in
A developer demonstrated their OpenClaw agent making phone calls via Telegram, featuring streaming text-to-speech that responds sentence-by-sentence and supports barge-in for natural conversations.

Multi-pane Claude Code setup with role separation and execution hooks
A developer shares a setup using four iTerm2 panes with separate Claude Code instances for implementation, auditing, planning, and prompt refinement, plus pre- and post-tool use hooks for safety and a session log for context retention.