Бот для интервального запоминания
В наше время человеку порой сложно запомнить большое количество информации, которая, зачастую, долго в голове не остается. Наш бот позволяет сделать запоминание эффективнее, используя интервальную технику. Она заключается в повторении материала по определённым, постоянно возрастающим интервалам.
- C#,
- SQL - PostgreSQL
- telegram/vk API
- UI
- Это интерфейс работы с площадкой бота, работает с площадкой команд.
- App
- Работает с интерфейсом для работы с базой данных и конвертации сущьностей
- Domain
- Содержит описание моделей:
- Карточка
- Перердняя сторона
- Задняя сторона
- Состояния алгоритма запоминания
- Колода
- Набор карточек
- Методы изучения
- Фунцдия для вычисления интервала запоминания
- Карточка
- Содержит описание моделей:
- Infrastructure
- Работа с БД
- Различные базы данных
- Sqlite
- PostgreSQL
- Реализация функционала на разных площадках
- VK
- Telegram
- Различные алгоритмы вычесления интервалов повторения
- Линейный алгоритм запоминания
- SuperMemo2
- Команды и ветки команд с сохранением состояний
Два варианта запуска
- Установите в окружение следующие переменные окружения (example):
- для телеграм бота:
TELEGRAM_TOKEN
- для вк бота:
VK_TOKEN
- для id группы вк:
VK_GROUP_ID
- базу данных для хранения:
BOT_DATABASE
(Sqlite или Postgres) - Если установлена Postgres, добавить также переменные окружения для postgress
- для телеграм бота:
- Собрать и запустить проект
- Скопировать файл example.env в файл .env
cp exapmle.env .env
- Установить необходимые переменные окружения в файле
.env
- Если выбрана база Postgres запусть базу
docker-compose -f postgres-compose.yml up
- Запустить бота
docker-compose up