Телеграмм-бот для записи задач. Доступные команды:
/task "текст задачи" - добавить новую задачу
/subtask "№ родительской задачи" "текст подзадачи" - добавить новую подзадачу (максимум 1 уровень вложенности)
/add_group "название группы" - добавить новую группу для задач
/add_to_group "№ группы" "№ задачи" - добавить существующую задачу в существующую группу
/list - вывести список всех текущих задач
/group_list - вывести список всех групп
/tasks_in_group "№ группы" - вывести список всех задач в группе с указанным номером
/find "искомая фраза" - вывести список задач, в который есть искомая фраза
/done "номера задач через пробел" - отметить задачи как выполненные
/reopen "номера задач через пробел" - отменить выполненность задач
/clear - очистить список задач (дальше можно выбрать тип удаления)
.env - хранилище данных для подключения (токена для тг и данных для PosgreSQL)
db.py - описанные в SQLAlchemy структуры таблиц для БД (таблица с заданиями и группами)
group.py - описание датакласса для объектов-групп
group_repository.py - описание функций для работы с группами
main.py - точка входа в программу
Pipfile - файл с данными для pipenv
settings.py - файл для подключения (к тг и бд)
task.py - описание датакласса для объектов-заданий
task_repository.py - описание функций для работы с задачами
todo_list_bot.py - обработка входящих сообщений с тг и запуск соответствующих функций