EatQuest.online

EatQuest — приложение для правильного питания без подсчёта калорий. День разбит на три квеста, еду можно отметить фразой или фото, а ИИ сам разбирает, что съедено. Мотивацию держат серия дней и вечерний итог вместо чувства вины.

Лендинг EatQuest: «Питайся лучше за три квеста в день»
Лендинг: обещание продукта, три квеста и карточка дня.
Демо на лендинге EatQuest: тип питания и цель превращаются в три квеста
Демо без регистрации: два вопроса, и посетитель сразу видит свои три квеста на день.
EatQuest на телефоне: главный экран и блок «Твой день»
Мобильная версия: приложение живёт в браузере, Telegram и VK Mini App.

Проблема

Классические трекеры превращают еду в бухгалтерию: граммы, нутриенты, таблицы. Большинство людей бросает такой учёт через неделю, и к усталости добавляется чувство вины. Поэтому задача продукта не «считать точнее», а сделать так, чтобы человек продолжал отмечать еду.

Решение

День — это три выполнимых квеста: утро, день, вечер. Человек отмечает еду фразой или фото, ИИ распознаёт блюдо, закрывает квест и коротко объясняет, как это влияет на день. Три закрытых квеста — серия, вечером приходит короткий итог дня. Персональные советы считаются от цели и профиля, без граммов и таблиц.

Ключевые продуктовые решения

  • Три квеста вместо учёта. Цель — закрыть день за пару минут, поэтому в продукте нет калорий и граммов. Всё, что требует точности, остаётся за кадром.
  • ИИ только там, где он снимает ввод. GigaChat распознаёт еду по тексту и фото; стоит фильтр, который принимает только блюда. Я выбрал GigaChat, потому что нужен нативный русский и распознавание изображений, а зарубежные модели из России недоступны.
  • Ошибку распознавания можно исправить. Любую запись можно исправить или удалить одним тапом, а день и серия пересчитаются. ИИ ошибается, и без этой кнопки ошибка ломает доверие.
  • Вход без пароля. Основной путь — Telegram (виджет и Mini App). Входы через ВКонтакте, MAX и Яндекс ID реализованы и включаются настройками; аккаунты разных сервисов не склеиваются.
  • Бесплатно — привычка, платно — персонализация. В бесплатной версии три квеста, запись, серия и история. В Premium — суточная норма по профилю, рекомендации от неё, учёт типа питания и трекинг движения к цели.
  • Подписку проверяю спросом. После закрытого дня бесплатный пользователь видит оффер Premium, и согласие записывается в лист ожидания. Платёжный контур (ЮKassa для самозанятого: чеки, рекуррентные платежи, вебхуки) готов и включается ключами.

Что уже сделано

Работают веб-приложение с офлайн-очередью записей (PWA), Telegram-бот с вечерними напоминаниями по времени пользователя, Mini App и Android-обёртка для RuStore. Есть нижняя навигация, тёмная тема, поделиться днём карточкой, админ-аналитика с конверсией из напоминаний и опросом удовлетворённости не чаще раза в неделю. Бэкенд покрыт тестами, выкладка идёт через CI. Аналитика устроена в два слоя: Яндекс Метрика (после согласия, без Вебвизора) и Umami без cookies. Публичных цифр аудитории пока не привожу: продукт на ранней стадии.

Чему научил проект

  • Платформу нужно определять по параметрам запуска, а не по наличию SDK. Из-за одного такого допущения в обычном браузере пропадал вход через Telegram.
  • Запись еды обязана быть исправимой: пользователь простит ошибку ИИ, но не простит потерянную серию.
  • Я бы начал с одного способа входа и сразу сделал лендинг с настоящими экранами, а не макетом. Четыре входа на старте — это четыре источника багов.

Стек и роль

  • Приложение: SPA на чистом JavaScript без сборки (PWA), бэкенд FastAPI, SQLite
  • Бот: aiogram; вход через Telegram, ВКонтакте, MAX, Яндекс ID
  • ИИ: GigaChat (Сбер) для распознавания и рекомендаций; оплата — ЮKassa
  • Android-обёртка на Capacitor для RuStore; прод на VPS в Docker, лендинг на Vercel
  • Роль: solo founder — продукт, дизайн, full-stack разработка

Статьи по теме

Ссылки