ТЗ: Telegram-бот для планов питания (n8n)

Техническое задание на разработку Telegram-бота для составления планов питания на базе n8n

1. Общие сведения

1.1. Назначение

Разработка Telegram-бота на базе n8n для составления и коррекции планов питания в соответствии с индивидуальными параметрами пользователя.

1.2. Цели и задачи

2. Требования к функциональности

2.1. Сбор данных пользователя

Бот должен последовательно собирать следующие данные:

2.1.1. Основные биометрические параметры:

2.1.2. Уровень физической активности:

Примечание: предусмотреть измерение активности в количестве шагов и понятной метафоре

2.1.3. Пищевые ограничения (множественный выбор):

2.1.4. Количество приемов пищи в день:

2.1.5. Предпочтительный протокол питания:

2.1.6. Количество дней планирования:

2.2. Алгоритм составления плана питания

Алгоритм должен выполнять следующие действия:

  1. Расчет базового обмена веществ по формуле Миффлина-Сан Жеора
  2. Определение целевого суточного калоража исходя из цели пользователя
  3. Распределение калоража по указанному количеству приемов пищи
  4. Анализ базы рецептов
  5. Исключение рецептов с нежелательными ингредиентами
  6. Подбор рецептов для каждого приема пищи в соответствии с:
    • Калорийностью
    • Типом приема пищи (завтрак, обед, ужин и т.д.)
    • Выбранным протоколом питания
  7. Формирование итогового плана питания в формате PDF

2.3. Авторизация и хранение данных

2.4. Система ограничений и оплаты

2.5. Замена продуктов

2.6. Техническая поддержка

3. Технические требования

3.1. Платформа

3.2. База данных

3.3. Интеграции

4. Пользовательский интерфейс

4.1. Навигация

4.2. Отображение результатов

4.3. Интерфейс замены продуктов

5. Формулы для расчетов

5.1. Формула Миффлина-Сан Жеора для расчета базового обмена веществ (BMR)

Для мужчин: BMR = (10 × вес в кг) + (6.25 × рост в см) - (5 × возраст) + 5

Для женщин: BMR = (10 × вес в кг) + (6.25 × рост в см) - (5 × возраст) - 161

5.2. Коэффициенты активности (PAL):

5.3. Коэффициенты целей:

Примечание: для женщин в период грудного вскармливания добавить 500 ккал к итоговому значению

6. Этапы разработки

6.1. Планирование и проектирование

6.2. Разработка основного функционала

6.3. Разработка дополнительных функций

6.4. Тестирование

6.5. Запуск и поддержка

7. Требования к документации

8. Дополнительные требования


2. Сбор данных и персонализация

2.1. Опрос и ввод данных

2.2. Генерация плана питания

  1. Расчёт BMR по формуле Миффлина–Сан Жеора (см. раздел 5).
  2. Умножение на коэффициент PAL (см. 5.2).
  3. Применение коэффициента цели (см. 5.3).
  4. Учёт пищевых ограничений при подборе блюд из базы рецептов.
  5. Формирование меню на выбранное число дней.
  6. Расчёт суммарной калорийности и распределения КБЖУ по дням.
  7. Формат вывода: генерируется простая HTML‑страница (веб‑ссылка). PDF формируется опционально по запросу пользователя.

2.3. Хранение данных

2.4. Доступ к сохранённым меню

2.5. Отсутствие блюда в базе


3. Платёжная система и безопасность

3.1. Авторизация

3.2. Защита данных

3.3. Платёжная интеграция


4. Функционал меню

4.1. Интеграция с базой рецептов

4.2. Модуль совместимости ингредиентов

4.3. Интерфейс замены продуктов


5. Формулы для расчётов

5.1. Формула Миффлина–Сан Жеора (BMR)

5.2. Коэффициенты активности (PAL)

5.3. Коэффициенты целей


6. Этапы разработки

6.1. Планирование и проектирование

6.2. Разработка основного функционала

6.3. Разработка дополнительных функций

6.4. Тестирование

6.5. Запуск и поддержка


7. Требования к документации



Revision #2
Created 6 May 2025 19:27:05 by David
Updated 13 May 2025 13:45:58 by David