A lightweight, offline-first, AI-enhanced video player for language learning.
轻量、离线优先、AI 增强的英语学习视频播放器。
DashPlayer is a desktop video player designed around the 100LS learning method — watch real TV shows and movies, shadow every sentence, get instant AI pronunciation scores, and build vocabulary naturally along the way.
Core loop: Watch → Shadow → AI Score → Episode Summary → Review
- Sentence-level navigation — jump between subtitles with
←→, repeat with↓ - Shadowing mode — auto-pause after each sentence, loop until you're satisfied
- AI pronunciation scoring — instant feedback on accuracy, fluency, and completeness
- Local-first dictionary — MDX dictionary support, no internet required for lookups
- SRS review — SM-2 spaced repetition, export to Anki
- Pluggable AI — Ollama / OpenAI / DeepSeek / Gemini, with proxy support
- Lightweight — built with Tauri (Rust), ~15MB install vs ~200MB for Electron apps
| Layer | Technology |
|---|---|
| Desktop framework | Tauri 2.x (Rust) |
| Frontend | React 19 + TypeScript + Vite |
| UI | TailwindCSS + shadcn/ui |
| Media | ffmpeg (Rust) |
| Database | SQLite |
| AI subtitles | Whisper.cpp (local) |
| AI scoring | Azure Pronunciation Assessment (optional) |
Requirements: Rust 1.80+, Node 22+, pnpm
git clone https://github.com/kesilent/dashplayer.git
cd dashplayer
pnpm install
pnpm tauri dev| Milestone | Status |
|---|---|
| M1 — Basic player + subtitles + keyboard shortcuts | 🔄 In progress |
| M2 — MKV/AVI/audio format support | ⬜ |
| M3 — Local dictionary (MDX) + vocabulary | ⬜ |
| M4 — Shadowing mode + AI pronunciation scoring | ⬜ |
| M5 — SRS review + learning stats | ⬜ |
| M6 — Pluggable AI backends + Azure scoring | ⬜ |
| M7 — LLM coaching + subtitle download | ⬜ |
MIT © KeSilent