Тренажер английских слов
Реализуйте тренажер для заучивания английских слов.
Основные возможности проекта
- Ввод слов через textarea (англ слово + перевод).
- Таблица всех слов с редактированием и удалением.
- Переключатель для фильтрации слов (все, для заучивания, выученные).
- Два режима работы: перевод с рус на англ и с англ на рус.
- Система запоминания с интервальным повторением.
- Кнопка сброса прогресса.
- Данные хранятся в localStorage.
Ввод слов
Пользователь вводит слова в textarea. Каждая пара слов вводится с новой строки в формате: "английское слово пробел перевод". Например:
- hello привет
- world мир
- cat кот
При нажатии на кнопку "Сохранить слова" они добавляются в таблицу. При повторном вводе новые слова добавляются к уже существующим.
Таблица слов
На странице таблицы выводится список всех слов с колонками:
- Английское слово.
- Перевод.
- Статус (для заучивания или выучено).
- Кнопки: редактировать, удалить.
Фильтрация слов
Переключатель позволяет вывести:
- Все слова.
- Слова, которые остались для заучивания.
- Уже выученные слова.
Режимы тренажера
Тренажер имеет два режима работы:
- Английский → Русский - показывается английское слово, нужно ввести перевод.
- Русский → Английский - показывается русское слово, нужно ввести перевод на английский.
Работа тренажера
При запуске тренажера показывается случайное слово из списка "для заучивания". Пользователь вводит перевод в инпут и нажимает кнопку:
- Если перевод правильный - слово считается выученным.
- Если неправильный - выводится сообщение об ошибке и слово остается в списке для заучивания.
Система запоминания
Выученные слова сохраняются в localStorage и не показываются при следующих запусках. Периодически (например, через 7 дней) выученные слова примешиваются к основным для проверки. Если пользователь забыл слово, оно возвращается в список для заучивания.
Сброс прогресса
На странице должна быть кнопка "Сбросить прогресс". При нажатии на нее все сохраненные выученные слова очищаются с подтверждением действия.
Хранение данных
Все слова и прогресс пользователя хранятся в локальном хранилище браузера (localStorage). При загрузке страницы данные загружаются из хранилища.
Дополнительные возможности
- Импорт/экспорт слов в JSON.
- Статистика: сколько слов выучено, сколько осталось.