Language-Tutor
Hacktoberfest 2026: Build for a Friend — Submission What I Built Language Tutor — A local-first AI language tutor that runs entirely in your terminal. Practice 15+ languages with complete privacy — all conversations, vocabulary, and progress data stays on your machine in SQLite. Only API calls leave your device for AI inference. Built for: My friend who wants to learn Spanish privately without…
Hacktoberfest 2026 saw the launch of Language Tutor, a novel AI language learning tool that operates entirely within a user's terminal. This local-first application allows users to practice 15+ languages with complete privacy, as all data remains on their machine in SQLite format. The only data leaving the device is for AI inference through API calls.
The tool was developed for a friend who desired a private, offline, and subscription-free Spanish learning experience. The app works offline, enabling users to review vocabulary, view progress, and export data without an internet connection. Users can choose from four tutor personalities, six CEFR levels, and eight AI models, all customizable within the app. The language tutor is also portable, requiring only a single binary, and includes export/import functionality for backups or sharing.
Features highlighted in the demo include:
- Vocabulary review using spaced repetition (SM-2) with options to grade words as Again, Hard, Good, or Easy.
- Roleplay scenarios covering various scenarios like restaurants, travel, interviews, doctor visits, and emergencies, in addition to custom scenarios.
- A progress dashboard showcasing streaks, heatmap, stats, and export/import functionality for data.
- Comprehensive keyboard shortcuts for ease of use.
- Access to all keyboard shortcuts through Help (Ctrl+Shift+H).
- Code repository available at https://github.com/H-sharma63/language-tutor.
The project's architecture centers around local-first principles, with SQLite (using WAL mode) serving as the primary data storage solution. The TUI (terminal user interface) is built using Ink, a React framework for CLIs. The app uses Commander.js for CLI parsing, better-sqlite3 for database interactions, and NVIDIA's free API tier for language generation through various models.
The codebase is written in TypeScript 5.x with Node.js 18+ requirements and no local inference is required, allowing the tool to run on any machine with internet access for chat interactions.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.