feat(trainer): add GitHub activity heatmap, 4-option quiz mode, active typing, and duplicate checks

This commit is contained in:
Antigravity committed 2026-09-23 10:02:29 +00:00
1 parent d31c77fdd0
commit 2294121777
16 files changed
+4318 -685

No files matched your search

+23 -18
View File
@@ -98,37 +98,39 @@
### Этап 2: Организация, теги, экспорт и PWA
*Цель: гибкое управление растущим словарным запасом и удобство на мобильных.*
- [ ] **2.1. Расширенная организация и контроль качества**:
- [x] **2.1. Расширенная организация и контроль качества**:
- Коллекции и папки (например, «Разговорный», «Работа», «Книги/Сериалы», «Сети/IT»).
- Быстрое массовое тегирование.
- Быстрое массовое тегирование и групповые действия (удаление, перемещение).
- **Контроль и предотвращение дубликатов (Duplicate Prevention & Merging)**:
- Проверка при вводе и сохранении (case-insensitive trim).
- Уведомление, если слово/фраза уже есть в словаре.
- Возможность дописать новый контекстный пример / значение к существующей карточке вместо пложения дублей или перейти к её редактированию.
- [ ] **2.2. Экспорт данных**:
- Экспорт базы в CSV / JSON / Markdown.
- Экспорт в колоду Anki (`.apkg` / `.csv`) с аудио и контекстными предложениями.
- Резервное копирование SQLite в один клик.
- [ ] **2.3. PWA (Progressive Web App)**:
- [x] **2.2. Экспорт данных**:
- Экспорт базы в CSV (UTF-8 BOM), JSON, Markdown.
- Экспорт в колоду Anki (`.tsv`) с аудио, контекстными предложениями и поддержкой Cloze deletion (`{{c1::word}}`).
- [x] **2.3. PWA (Progressive Web App)**:
- Установка на экран смартфона (iOS / Android) как нативное приложение.
- Оффлайн-доступ к сохранённым словам.
- Service Worker, Web Manifest, оффлайн-кэш статики.
---
### Этап 3: Встроенный тренажер интервальных повторений (SRS / SM-2)
*Цель: перевод слов из пассивного словаря в активную долговременную память.*
- [ ] **3.1. Движок SuperMemo-2 (SM-2) & Умная выборка**:
- [x] **3.1. Движок SuperMemo-2 (SM-2) & Умная выборка**:
- Расчет интервалов забывания Эббингауза: `Again`, `Hard`, `Good`, `Easy`.
- **Умный микс дня (Daily Quiz Mix)**: баланс сессии (например, 10 новых + 10 интервальных повторений + 5 проблемных слов в разнобой).
- **Умный микс дня (Daily Quiz Mix)**: баланс сессии (до 10 новых + 10 интервальных повторений + 5 проблемных слов в разнобой).
- **Детектор трудных слов (Leeches)**: автоматическая маркировка слов с частыми ошибками и их приоритетное подмешивание.
- [ ] **3.2. Режим Flashcards**:
- Карточка En $\rightarrow$ Ru и Ru $\rightarrow$ En с озвучкой.
- [ ] **3.3. Режим активного набора (Active Typing / Ru $\rightarrow$ En)**:
- [x] **3.2. Режим Flashcards**:
- Двусторонняя карточка En $\rightarrow$ Ru и Ru $\rightarrow$ EN с нативной озвучкой, подсказкой контекста и горячими клавишами `Space`, `1..4`.
- [x] **3.3. Режим Multiple Choice Quiz (4 варианта ответа)**:
- Выбор правильного перевода среди 4 вариантов со случайными дистракторами из базы.
- Мгновенная проверка, подсветка цветом (зеленый/красный) и горячие клавиши `1..4`.
- [x] **3.4. Режим активного набора (Active Typing / Ru $\rightarrow$ En)**:
- Видишь русский перевод / контекст с пропуском $\rightarrow$ вводишь английское слово с клавиатуры (прокачка моторной памяти и спеллинга).
- [ ] **3.4. Режим Cloze Deletion (Контекстные пропуски)**:
- [x] **3.5. Режим Cloze Deletion (Контекстные пропуски)**:
- Заполнение пропущенного слова прямо в живом предложении.
- [ ] **3.5. Аудио-тренажёр (Dictation)**:
- [x] **3.6. Аудио-тренажёр (Dictation)**:
- Слушаем слово $\rightarrow$ печатаем правильный спеллинг.
---
@@ -136,8 +138,11 @@
### Этап 4: Интеллектуальный помощник и аналитика
*Цель: отслеживание динамики и поддержка мотивации.*
- [ ] **4.1. Статистика и Daily Streak**:
- Учёт непрерывных дней занятий.
- График роста активного словарного запаса по уровням (A1-C1).
- [x] **4.1. Статистика, Daily Streak и Календарь активности (GitHub-style Heatmap)**:
- GitHub-style сетка активности за 180 дней с градацией интенсивности (серый, салатовый, зеленый, изумрудный).
- Учёт непрерывных дней занятий (Daily Streak 🔥) и рекорда серии.
- Сегментированный прогресс-бар стадий освоения (Новые, В процессе, Закрепление, Выучено).
- Оценка уровня владения языком (A1 - C1) по объёму активного словаря.
- Процент точности запоминания (Retention Rate %).
- [ ] **4.2. Быстрый захват из браузера**:
- Букмарклет для выделения текста на любой странице и отправки в словарь.