A privacy-focused, local AI-powered English tutor with a WhatsApp-inspired interface. Speak or type to interact with your AI tutor, featuring high-quality voice transcription and synthesis—all running locally on your machine.
- Conversation History: Persistent storage for all your practice sessions using SQLite.
- Conversation Management: Easily Delete, Archive, or add Notes to your sessions via a dedicated menu.
- Adaptive Learning: Supports all CEFR levels (A1 to C2) with context-aware responses and corrections.
- Voice-First Interaction: Transcribe your speech in real-time using
faster-whisper. - Natural Voice Synthesis: High-quality local TTS using
kokoro-onnxfor a human-like tutoring experience. - Local LLM: Powered by
Ollama, ensuring your conversations stay private. - WhatsApp-Style UI: Familiar and clean interface built with
PySide6. - Real-time Indicators: Visual feedback for "thinking", "recording", and "transcribing" states.
The Local English Tutor adapts to your specific needs through a two-step selection process:
- Level Selection: Choose from standard CEFR levels (A1 to C2) or specialized tracks like Business English and Job Interview preparation.
- Subject Selection: Pick from dozens of curated topics—ranging from "Daily Routine" for beginners to "Quantum Field Theory" or "Business Negotiation" for advanced learners.
- Customizable Subjects: You can easily add new subjects or levels by editing the
config.jsonfile.
This ensures the AI Tutor uses the appropriate vocabulary, grammar complexity, and context for your session.
- UI Framework: PySide6 (Qt for Python)
- LLM Engine: Ollama
- Speech-to-Text: faster-whisper (Whisper Medium model)
- Text-to-Speech: kokoro-onnx
Tip
You can easily switch between these models by updating the "model" field in your config.json file.
Before you begin, ensure you have the following installed:
- Python 3.12+
- Ollama: Download and install Ollama
-
Clone the repository:
git clone https://github.com/VictorLopes/LocalEnglishTutor.git cd LocalEnglishTutor -
Run the setup script: This will create a virtual environment, install dependencies, and pull the required LLM model.
chmod +x setup.sh ./setup.sh
-
Start the application:
./start.sh
-
Configure your session:
- Select your English Level on the first screen.
- Choose a Subject you'd like to practice.
-
Start Chatting:
- Text Chat: Type your message in the input field and press Enter.
- Voice Chat: Click the 🎤 icon to start recording, speak, and click the ⏹ icon to stop. The AI will automatically transcribe and respond with audio.
- Audio Playback: Click the play button on AI messages to replay the tutor's voice.
Warning
On MacOS, the app needs permission to access the microphone. You can grant this permission in the System Settings > Privacy & Security > Microphone. If you are facing issues with the microphone, try granting the permission in the terminal using tccutil reset Microphone com.localenglishtutor.app.
This project is licensed under the MIT License - see the LICENSE file for details.

