← Все проекты

Кейс / Product / Telegram Mini App / MAX Mini App / Backend / Automation

Собственный продукт · В активной разработке

FitAdventure

От фитнес-бота до полноценного кроссплатформенного продукта

FitAdventure начинался как инструмент для контроля питания, но постепенно вырос в полноценную кроссплатформенную систему для управления питанием, здоровьем, привычками, обучением, личными финансами и прогрессом пользователя.

Основной интерфейс работает как Mini App внутри Telegram и MAX, а боты отвечают за вход, быстрые действия и уведомления.

  • Python
  • Telegram Bot API
  • MAX API
  • JavaScript
  • HTML
  • CSS
  • SQLite
  • Nginx
  • Linux
  • GitHub Actions
FitAdventureCross-platform full-stack product
FitAdventureMini App
Моя система
Личный прогрессКаждый день — шаг
Привычки
Задачи
ПитаниеАкадемияПривычкиФинансы
ГлавнаяМоя системаПрофиль
Nutrition Enginev2
Автоматические тесты523 passed
Telegram + MAXСобственный продукт
Продукта
632
Рецепта
564
Материала Академии
293
Мини-игр
6
API-маршрутов
~100
Автоматических теста
523
Задача

Что требовалось решить

Объединить питание, здоровье и личное развитие в одном продукте, который работает внутри двух мессенджеров и развивается без дублирования предметной логики.

Подход

Как устроено решение

Общая сервисная архитектура, адаптивный Mini App, versioned API и отдельные адаптеры Telegram и MAX. Изменения проходят автоматические тесты и CI/CD.

01 / Продукт

13 продуктовых направлений в одной системе

Основная работа пользователя проходит в адаптивном Mini App. Боты отвечают за вход, быстрые действия, уведомления и поддержку.

Mini AppОбщий продуктовый интерфейс
01Nutrition02Food Diary03Water04Steps05Weight06Measurements07Activities08Habits09Tasks10Goals11Finance12Academy13Games

Питание

Nutrition, Food Diary, Water.

Здоровье и активность

Steps, Weight, Measurements, Activities.

Личная система

Habits, Tasks, Goals, Finance.

Обучение и вовлечение

Academy, Games.

03 / Система питания

От продукта до персонального рациона

Дневник питания, приёмы пищи, изменение граммовки и удаление записей. Каталог объединён с рецептами и персональными рационами.

Mini App
Питание в одной системе
Дневник питания632 продукта564 рецепта
FitAdventureMini App
Дневник питания
ДневникКаталогРецепты
ПитаниеИтог дня
Завтрак+
Обед+
Ужин+
ГлавнаяМоя системаПрофиль
Продукта
632
Рецепта
564
Базовых вариантов рационов
6

04 / Ежедневный прогресс

Понятная картина каждого дня

Mini App
Каждый день — прогресс
Вода и шагиВес и замерыАктивность
FitAdventureMini App
Моя система
Личный прогрессКаждый день — шаг
Привычки
Задачи
ПитаниеАкадемияПривычкиФинансы
ГлавнаяМоя системаПрофиль

Вода и шаги

Индивидуальная цель воды, быстрый ввод и прогресс. Текущий результат шагов, цель, streak и рекорд.

Вес и замеры

История и динамика веса, замеры тела, фотографии прогресса и сравнение до/после.

Активность

Тренировки, дополнительные активности, ориентировочный расход энергии и итог дня.

Расход от активности не используется для искусственного автоматического увеличения нормы питания.

05 / Моя система

Не только фитнес

Отдельный продуктовый слой для управления привычками, задачами, целями, обучением и финансами.

Mini App
Личные процессы в одном месте
Привычки и задачиЦели и финансыОбучение и самочувствие
FitAdventureMini App
Моя система
Личный прогрессКаждый день — шаг
Привычки
Задачи
ПитаниеАкадемияПривычкиФинансы
ГлавнаяМоя системаПрофиль

Привычки

Шаблоны, количественный прогресс, текущие и лучшие серии.

Задачи и цели

Ежедневные задачи, приоритеты и перенос. Сроки и прогресс целей.

Самочувствие

Настроение, энергия, сон и заметка дня.

Обучение

Чтение, английский и deep work.

Финансы

Доходы, расходы, категории, бюджет, цель накопления и план / факт.

Аналитика и награды

Недельная статистика, streaks, XP, coins, журнал наград, дневные лимиты и защита от повторного начисления.

06 / Академия и игры

Обучение связано с действием

Встроенная образовательная система и геймификация помогают объединить контент, привычки и личный прогресс.

Mini App
Знание → действие
26 направлений293 материала6 мини-игр
FitAdventureMini App
Академия
Питание и привычки
26 направлений293 материала
Избранное☆
Прогресс чтения↗
ГлавнаяМоя системаПрофиль
Тематических направлений
26
Материала
293
Мини-игр
6

Академия

Глобальный поиск, избранное, недавно просмотренные, персональные рекомендации и прогресс чтения. Связь материалов с игрой, собственные иллюстрации и карточки категорий.

Игры

«Белковый улов», «Тренировка реакции», «Не дай сорваться», «Собери тарелку», «Бей калории», «Викторина Академии».

Правила вовлечения

Score, lives, records, daily challenge, achievements, XP и coins. Ограничения предотвращают бесконечный фарм наград.

07 / Notification Engine

Напоминание появляется по правилу

Coach построен как детерминированная rule-based система. Генеративный AI Coach находится в roadmap.

Rule-based CoachСобытие → правилоНастройки + quiet hours
01Проверка условий

Вода, шаги, питание, активность

02Проверка отправки

Idempotency · одно событие один раз

03Личное напоминание

Telegram / MAX

  1. 01Данные пользователя
  2. 02Trigger engine
  3. 03Notification engine
  4. 04Проверка idempotency
  5. 05Telegram / MAX

Сценарии

Вода, шаги, дневник питания, итог дня, контроль веса, активность и недельный прогресс.

Личные настройки

Индивидуальное время, интервалы, timezone и quiet hours.

Smart triggers

Мало воды, шагов или белка, отклонение по калориям, динамика веса и отсутствие активности.

Одно событие не отправляется повторно.

08 / Telegram + MAX

Один продукт — две платформы

Общая продуктовая логика и Mini App с отдельными адаптерами мессенджеров.

Общая продуктовая логика
↓
Адаптивный Mini App
TG
Telegram

Bot API / WebView

MAX
MAX

Webhook / API adapter

Telegram

Python-telegram-bot, меню бота, запуск Mini App, быстрые действия и уведомления.

MAX

Webhook, custom API adapter, Mini App и уведомления.

09 / Безопасность и UX

Проверенный пользователь. Предсказуемый интерфейс.

Аутентификация

HMAC verification Telegram init data, signed MAX parameters и ownership validation по user_id. MAX IDs изолированы от Telegram IDs.

Защита операций

Проверка размера HTTP requests, safe file path handling, versioned documents, защита от перезаписи более новых данных, mutation guards и request timeouts.

Обучение в интерфейсе

Первый запуск VYRON, затем FITRON. Интерактивный tour с подсветкой реальных UI elements, contextual hints для всех 13 разделов и повторным запуском.

Состояния интерфейса

Loading, empty, error, offline и retry. Учтены мобильные экраны, Telegram WebView и MAX WebView.

Telegram и MAX аккаунты пока не объединяются автоматически. Безопасная account linking система остаётся в roadmap.

12 / CI/CD и развёртывание

Проверить. Развернуть. Восстановить при сбое.

Production pipeline включает автоматическое развёртывание, healthcheck и rollback к предыдущей версии.

Healthcheck passedНовая версия работает
Ветка восстановления при ошибке
Healthcheck failed→Rollback→Previous version→Database restore
при необходимости
  1. 01Git Push
  2. 02GitHub Actions
  3. 03Tests
  4. 04Linux VPS
  5. 05Service Restart
  6. 06Healthcheck
  7. 07Success

Если healthcheck не прошёл

Healthcheck Failed → Rollback → Previous Version → Database Restore при необходимости.

Инфраструктура

GitHub Actions, Linux VPS, Nginx, HTTP/2, systemd, bot service и Mini App service.

Контроль релиза

Автоматическое развёртывание, healthcheck, rollback, backup, systemd timer, SQLite Backup API, integrity_check, repository secret scanning и runtime-file checks.

13 / Надёжность данных

Релиз можно откатить. Данные — восстановить.

Работа с данными строилась с учётом возможных ошибок релиза и необходимости восстановления предыдущего состояния.

Резервирование

Automatic backup, SQLite native Backup API и integrity_check.

Восстановление и миграции

Recovery, migration, document versions и change log.

14 / Project snapshot

Технический масштаб продукта

Технический срез структуры проекта. Объём кода включает инструменты и тесты.

Backend-модулей
57
Экранов Mini App
13
Строк Python, включая tools/tests
~40 000
Строк JavaScript
~7 200
Строк CSS
~8 500
Migration / import / audit tools
49
API-маршрутов
~100
Автоматических теста
523

15 / В разработке

Открытый roadmap

Собственный продукт развивается поэтапно. Эти направления пока не представлены как готовые функции.

В разработке

Premium и Trial

Premium доступен только для предварительного просмотра. Пробный период на 5 дней и демо-модель описаны, но серверное ограничение доступа пока отключено.

В разработке

Оплата

Telegram Stars и внешняя оплата пока не подключены.

В разработке

Персонаж и идеи питания

Раздел «Мой персонаж» находится в подготовке. Система развития персонажа ещё не реализована; идеи питания — в разработке.

В разработке

Аккаунты и AI Coach

Безопасное объединение аккаунтов Telegram и MAX пока не реализовано. Генеративный AI Coach находится в разработке.

В разработке

Цели и финансы

Этапы достижения целей и переводы между финансовыми счетами пока не реализованы.

В разработке

Операционные проверки

Часть проверок восстановления production и отправки уведомлений выполняется вручную.

Результат

Из фитнес-бота — в полноценный full-stack продукт.

FitAdventure вырос из фитнес-бота в полноценный full-stack продукт с собственной предметной логикой, двумя messenger-платформами, Mini App, versioned API, SQLite-first storage, системой уведомлений, образовательным контентом, играми и production pipeline.

Проект используется как долгосрочная продуктовая разработка: новые функции добавляются поверх общей архитектуры, а изменения проверяются автоматическими тестами и проходят через CI/CD.

Следующий проект

AI Business Assistant

AI-консультант по базе знаний бизнеса