План питания

прототип S1

📰 Что нового

История обновлений сервиса. Сверху — самое свежее.

Чистка каталога: без времени готовки — не предлагаем

24 мая 2026 г.
  • 🐛 ФиксБлюда, у которых в каталоге не указано время готовки, больше не попадают в меню. Раньше для оптимизатора такое блюдо было «бесплатным» (0 минут готовки) — и охотно вытаскивалось в план, ломая расчёт бюджета готовки.
  • 🐛 ФиксОткровенные ошибки парсера в каталоге (типа «паста, 30 часов активной готовки» или «салат, 25 часов») автоматически вычищены — у таких рецептов время сбрасывается, и они тоже выпадают из меню. Это около десяти конкретных рецептов.

Жёсткость настроек оптимизатора — ползунками 0–100

23 мая 2026 г.
  • ✨ ФичаНа странице «Профиль» → «Профили оптимизатора» веса теперь — ползунки 0–100 вместо непонятных чисел. 0 = «полностью игнорировать», 100 = «жёстко». Тянете ползунок мышкой, значение обновляется через ~0.4 с после остановки.
  • ✨ ФичаДля бюджета готовки (недели и дня) значение «100» теперь — настоящий жёсткий лимит: оптимизатор не имеет права превышать. Если не помещается в каталог — план не построится (тогда снизьте ползунок до 80–90 или увеличьте бюджет/настройте больше готовочных дней). Для остальных настроек (разнообразие, КБЖУ-коридор и т.д.) 100 = «очень строго», но без полного запрета — иначе план часто бы не строился.
  • ✨ ФичаПрофиль «Быстрый» по умолчанию теперь стоит на 100% жёсткости по бюджету готовки — это и было ожидание. Если не помещаетесь в бюджет — оптимизатор сразу скажет, а не выдаст 23 часа готовки с грустной миной.
  • 🐛 ФиксСуществующие настройки автоматически переехали на новую шкалу при первом запуске (старые числовые значения сконвертированы пропорционально).

Меню с супами/салатами, корректное время готовки, бюджет жёстче

23 мая 2026 г.
  • 🐛 ФиксЕсли в составе обеда или ужина выбраны конкретные компоненты (например, первое + салат) — могло составляться меню только на завтрак, остальные приёмы оставались пустыми. Исправлено: теперь оптимизатор находит супы, салаты и прочие компоненты как положено.
  • 🐛 ФиксВремя готовки в карточках вариантов меню могло показываться завышенным (до 2× от реального) — особенно если у участников разные размеры порций. Цифры на странице «Готовка» при этом были правильные. Теперь обе страницы считают одинаково — реально, по весу с учётом батчинга.
  • 🐛 ФиксОптимизатор теперь жёстче держится бюджета готовки: при сильном превышении (>50% сверху) накладывается резко более тяжёлый штраф, чтобы вариант с короткими готовками выигрывал у длинных стейков 5-часовой запеканки. Раньше с «Быстрым» профилем мог выскакивать план на 4× больше бюджета.
  • 🐛 ФиксЕсли в каталоге нет блюд нужного типа для приёма, сервис теперь сразу скажет об этом понятным сообщением (с подсказкой что поменять) — а не пытается собрать меню «как может» и оставить часть пустой.

Действия с отдельными компонентами приёма

22 мая 2026 г.
  • ✨ ФичаКаждое блюдо в приёме теперь можно заменить отдельно — нажмите ↻ рядом с конкретным компонентом (первым, вторым, салатом). Раньше замена работала только для приёма целиком.
  • ✨ ФичаВ любой приём можно вручную добавить компонент — десерт, соус, выпечку или просто ещё одно блюдо. Кнопка ➕ в ячейке приёма на странице плана. Добавленные вручную десерты и соусы сохраняются при перепланировании.
  • ✨ ФичаНа странице выбора меню блюда сгруппированы по типу компонента — первое, второе, салат — раскрывающимися блоками. Сразу видно структуру меню недели.
  • ✨ ФичаВ обязательных блюдах появился фильтр по компоненту: можно закрепить «в обед обязательно суп» — выберите нужный компонент в форме пина.

Состав приёмов: первое, второе, салат, напиток, закуска

21 мая 2026 г.
  • ✨ ФичаПриём пищи теперь может состоять из нескольких блюд: первое (суп), второе, салат, напиток, закуска. Раньше один приём — одно блюдо.
  • ✨ ФичаВ профиле появилась новая секция «🍽️ Состав приёмов» — настройте, из каких компонентов состоит ваш типичный обед и ужин (по умолчанию: одно блюдо, как раньше).
  • ✨ ФичаОптимизатор подбирает блюдо под каждый компонент отдельно — учитывая, что суп идёт только в обед/ужин, а закуска лёгкая.
  • 🐛 ФиксКатегория «солёная выпечка» (пироги с мясом, грибами, картошкой; чебуреки; кутабы) теперь правильно идёт в «второе» — это полноценное основное блюдо, не выпечка к чаю.

Обязательные блюда в плане недели и в шаблоне

20 мая 2026 г.
  • ✨ ФичаНа странице «План недели» прямо на Шаге 3 перед кнопкой «Составить меню» появилась секция 📌 «Обязательные блюда». Закрепите блюда, которые точно должны попасть в меню — оптимизатор подстроит остальные слоты вокруг них.
  • ✨ ФичаГранулярность гибкая: дополнительно можно зафиксировать тип приёма (например «только ужин») и день недели — или оставить «любой». Минимум — просто блюдо.
  • ✨ ФичаЕсли хочется одно и то же блюдо несколько раз — поставьте в селекторе «×2», «×3» и т.д. Это значит «минимум столько раз»: оптимизатор может поставить и больше, если это удобно. Считается в приёмах, а не слотах: общий ужин для двоих — это один приём.
  • ✨ ФичаМожно закрепить одно блюдо несколько раз с разными фильтрами — например, «пицца на завтрак в пн» + «пицца на обед в пт». После «Добавить» форма остаётся открытой с выбранным блюдом, фильтры сбрасываются — второй пин ставится в один клик.
  • ✨ ФичаВ шаблонах недели тоже есть свой раздел обязательных блюд: при сохранении недели как шаблона пины переезжают в шаблон, при применении шаблона к новой неделе — обратно. То есть закреплённые блюда становятся частью «заготовки».
  • ✨ ФичаЕсли зафиксированные блюда не помещаются в неделю — сервис скажет об этом конкретно. Например: «Мясная пицца не подходит для типа приёма "завтрак" (блюдо подходит для: обед, ужин)» — будет понятно, что снять или поменять.
  • 🐛 ФиксПрименение шаблона теперь корректно переносит выбранный пресет оптимизатора в новую неделю (раньше пресет терялся при создании недели «из шаблона»).
  • 🐛 ФиксПин больше не теряется, если вы вносите правки в меню (заменяете блюдо или исключаете) перед выбором варианта. Раньше после редактирования и нажатия «Применить» оптимизатор пересобирал план без знания о пинах — и пинованное блюдо могло пропасть. Теперь пин соблюдается на каждом пересчёте, включая «Перепланировать день».

Сервис подбирает вес порции

18 мая 2026 г.
  • ✨ ФичаСервис подбирает размер порции в граммах. В плане недели у каждого приёма теперь видно «300 г» — сколько именно положить, чтобы попасть в дневные КБЖУ. Раньше порция всегда была «одна целая по рецепту».
  • ✨ ФичаОптимизатор масштабирует порции под ваш КБЖУ-коридор — это второй рычаг кроме выбора блюда: точнее попадание в цели без раздувания меню.
  • ✨ ФичаПлан готовки показывает реальный вес — сколько всего граммов каждого блюда готовить за неделю.
  • ✨ ФичаСписок покупок считает количество ингредиентов от фактического веса порций, а не от «одной порции по рецепту».
  • ✨ ФичаОтметка «✓ Съел» запоминает плановый вес порции.

Меню учитывает время готовки

17 мая 2026 г.
  • ✨ ФичаМеню теперь учитывает время готовки: оптимизатор собирает блюда в батчи и минимизирует число готовок за неделю. Раньше планы набегали на 10+ часов у плиты — теперь профиль «Быстрый» реально экономит время.
  • ✨ ФичаВ ⚙ Профиле задаётся бюджет времени готовки на день — сколько минут вы готовы провести у плиты в лёгкий / средний / большой день. Оптимизатор старается в него уложиться.
  • ✨ ФичаПовтор блюда считается отдельно для каждого человека: общий ужин на двоих больше не штрафуется как однообразие — это ведь и одна готовка.
  • ✨ ФичаПри составлении меню и плана появился прогресс-бар с примерным временем ожидания — видно, что расчёт идёт, а не завис.
  • 🐛 Фикс«Перепланировать день» больше не задевает соседние дни — остальная неделя остаётся как была.

Точнее кухни, меню = план, багфиксы

16 мая 2026 г.
  • ✨ ФичаВсе рецепты заново размечены по кухне и типу приёма — в меню теперь больше разнообразия по кухням.
  • ✨ ФичаОбед и ужин — общий пул блюд: одно блюдо годится и туда, и туда. В меню они показаны одной группой «Обеды и ужины».
  • 🐛 ФиксПлан недели собирается строго из блюд вашего меню — оптимизатор больше не подставляет блюда, которых вы не выбирали.
  • 🐛 ФиксПоиск замены блюда находит по любой форме слова («рыбой» → «рыба») и по всему каталогу, а не только среди ближайших кандидатов.
  • 🐛 ФиксУдаление недели больше не падает с ошибкой.
  • ✨ ФичаСписок покупок заметно чаще находит конкретный товар в каталоге ВкусВилл.

Нормальный вход и выход

15 мая 2026 г.
  • ✨ ФичаВход теперь через обычную форму на странице /login — вместо браузерного окошка логина/пароля.
  • ✨ ФичаКнопка 🚪 Выйти наконец-то работает по-настоящему: завершает сессию и открывает форму входа.
  • ✨ ФичаСмена пароля больше не выкидывает из сервиса — текущая вкладка продолжает работать; на других устройствах сессии завершаются.
  • ✨ ФичаСменить пароль снова можно прямо в мастере первого входа.
  • 🔐 БезопасностьСессии хранятся на сервере (HttpOnly-cookie, срок 30 дней) — вход переживёт перезапуск браузера, а выход мгновенно отзывает доступ.

Логаут, релиз-ноты, новая модель учёток

14 мая 2026 г.
  • ✨ ФичаКнопка 🚪 Выйти в шапке — позволяет разлогиниться и зайти под другой учётной записью.
  • ✨ ФичаНовая вкладка 📰 «Что нового» — здесь будем публиковать обновления сервиса.
  • ✨ ФичаУчётные записи теперь хранятся в БД сервиса. Админ может выдавать новые логины из ⚙ Профиля.
  • ✨ ФичаПри первом входе нового пользователя — пошаговый wizard: профиль (рост/вес/КБЖУ), смена пароля, выбор/создание домохозяйства.
  • ✨ ФичаВ админ-форме «Создать учётку» — кнопка 🎲 генерации безопасного пароля.

Облачный деплой

13 мая 2026 г.
  • ✨ ФичаСервис задеплоен на aeolin.art с TLS-сертификатом Let's Encrypt.
  • ✨ ФичаКартинки рецептов и продуктов ВкусВилл скачиваются локально — быстрее загружаются.
  • 🔐 Безопасностьfail2ban банит IP после 5 неудачных попыток входа за 10 минут.
  • ✨ ФичаАвтоматический бэкап БД и картинок раз в сутки в 04:00.

Каждая запись отмечается как прочитанная автоматически при заходе на эту страницу.