← все системы
01 · продукт · 2026

OnyxFit

еда, тренировки, давление и привычки в одном приложении

Одно приложение вместо шести: еда, тренировки, давление, сахар, привычки и дыхание — для человека с телефоном в руке. От первого коммита до продукта в проде — одиннадцать дней.

11дней от первого коммита785коммитов за эти дни289ручек API
мобильный вебданные о здоровьеработа без связиWebGLсвоя платформа
onyxfit.ru — посмотреть в проде
OnyxFit, экран дня: калории и БЖУ, совет из разбора дня, поиск еды
OnyxFit, итог тренировки: рекорды, время, поднятый вес
01 — как это было
01 Задача

Сделать одно приложение вместо шести. Еда, тренировки, давление, сахар, привычки и дыхание обычно живут в разных программах, и ни одна не знает о другой. OnyxFit ведёт их вместе — для одного человека с телефоном в руке: на кухне, в зале, с тонометром на руке.

Вторая половина задачи — тон. Приложений, которые считают калории и стыдят за лишние, достаточно. Это должно было считать честно и говорить бережно: объяснять, откуда каждая цифра, и не ругать, когда день пошёл не по плану.

02 Фундамент

Продукт стоит на ядре платформы студии: вход по коду из письма, админка с ролями, конструктор сайта, аналитика, бэкапы и выкат уже были — их не пришлось писать заново. Всё время ушло на сам продукт: он написан рядом с ядром, в своих файлах и своих таблицах, и ядро обновляется, не задевая его.

Первый коммит продукта — 1 октября. Через одиннадцать дней в нём 785 коммитов, 289 ручек API, 57 своих таблиц и 45 релизов.

03 День

Главный экран — один день: что съедено, сколько осталось и что с этим делать. Блоки стоят в порядке, который человек выбрал сам; лишние можно скрыть.

OnyxFit, экран дня: калории и БЖУ, совет из разбора дня, поиск еды
День: калории, БЖУ и главный совет
OnyxFit, экран дня: раскрытый приём пищи, записи с ГИ и ГН, вода
Приём пищи: записи с ГИ и нагрузкой на сахар
OnyxFit, разбор дня: калории и белок в цели
Разбор дня: что сошлось с целью

За простым «записал еду» стоит правило, в какой приём она попадёт: сначала в тот, что идёт сейчас, — от получаса до первой записи до получаса после последней; потом в пустой плановый, если до него не больше полутора часов; иначе заводится новый. Каждый такой выбор уходит в аналитику — чтобы разбирать случаи, когда еда легла не туда.

04 Честные цифры

Блюдо — это сырой состав и вес готового: суп уварился, и калорийность ста граммов считается от того, что вышло из кастрюли. В приёме лежит своя копия состава, поэтому правка рецепта не переписывает прошлое.

«В цели» — это плюс-минус десять процентов, и одна и та же граница стоит в четырёх местах сразу: в советах дня, в вечернем итоге, в сверке с планом и в статистике. Расхождения между ними ловит отдельная проверка.

OnyxFit, статистика питания за месяц: калории по дням и средние к целям
Месяц: калории по дням и средние к целям
OnyxFit, разбор дня: сверка дня с планом и неделя по дням
День и план: шаг к цели по весу и неделя
OnyxFit, разбор дня: вода — выпито, из напитков и из еды, по часам
Вода: выпитое, напитки и то, что пришло с едой

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

05 План, меню и вес

План питания считает этапы от веса и цели; каждое число в нём объяснено в документе с правилами, который меняется вместе с кодом. Вес показан трендом в коридоре плана — за сутки он гуляет на килограмм от воды и соли, и цифра одного утра ничего не значит.

OnyxFit, план питания: вес — план и факт, сверка недели
Вес: коридор плана, тренд и замеры
OnyxFit, меню на неделю: блюда дня с граммами и калориями
Меню на неделю под цели этапа
OnyxFit, список покупок под меню на неделю
Список покупок под это меню
06 Тренировки

Тренировка — лента «подход / отдых». Она живёт в телефоне и уходит на сервер целым документом: в зале связь пропадает, и ни один подход не должен пропасть вместе с ней. Таймеры считаются от отметок времени, поэтому заблокированный экран отдых не ломает.

OnyxFit, тренировка: таймер подхода и лента «подход / отдых»
Идёт подход: таймер и лента
OnyxFit, итог тренировки: рекорды, время, поднятый вес
Итог: рекорды и поднятый вес
OnyxFit, упражнение: какие мышцы работают и прогресс веса
Упражнение: какие мышцы работают
07 Давление, сахар и свой ГИ

Давление — дневник домашних замеров и «умный замер»: пять минут покоя, два замера с минутой между ними. Оценивается среднее за неделю, а не одна цифра.

OnyxFit, давление: среднее за неделю, зона и график
Давление: среднее за неделю и зона
OnyxFit, умный замер давления: подготовка по шагам
Умный замер: подготовка по шагам
OnyxFit, сахар крови: последний замер, коридор и история
Сахар крови: коридор зависит от того, когда мерили

Гликемический индекс из таблиц — средний по людям. Здесь его можно измерить на себе: эталон на глюкозе, потом продукт, глюкометр — и приложение считает личный индекс, который дальше участвует во всех расчётах вместо табличного.

OnyxFit, свой гликемический индекс: продукты, измеренные глюкометром
Свой ГИ: измерен глюкометром
OnyxFit, обхваты тела: фигура с лентами и изменения
Обхваты: лента видит то, чего не видят весы
OnyxFit, вес: тренд и замеры
Вес: тренд важнее цифры дня
08 Обеты и дыхание

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

OnyxFit, обеты: счётчик серии без сладкого и вехи
Обеты: серия, вехи и рекорд
OnyxFit, дыхательная пауза
Дыхательная пауза
OnyxFit, база знаний: статья о гликемическом индексе
База знаний: 37 статей простыми словами
09 Один камень

На открытом сайте продукт говорит одним образом: «Одна жизнь — один камень». Оникс нарисован на WebGL, шесть его слоёв — шесть направлений приложения, цвета слоёв те же, что у разделов внутри. Все открытые страницы собраны в том же конструкторе, что и сайты на платформе.

Сайт OnyxFit: «Одна жизнь — один камень», оникс из шести слоёв
Сайт: оникс из шести слоёв
10 За сценой

У продукта свои экраны в админке: кто пользуется приложением и возвращается ли, база продуктов и автопроверка того, что в неё добавляют.

Админка OnyxFit, «Продукты»: база, модерация и что едят чаще всего
Продукты: база и что едят чаще всего
Админка OnyxFit, «Автопроверка»: что правила пропустили сами и что оставили человеку
Автопроверка: что правила решили сами

Выкат идёт без простоя: новый контейнер поднимается рядом, nginx переводится на него, старый дорабатывает начатые запросы.

11 Результат

Одиннадцать дней от первого коммита до продукта в проде с шестью направлениями — еда, тренировки, давление, сахар, обеты, дыхание — и 45 релизов за это время. Так быстро — потому что фундамент уже стоял: время ушло на продукт, а не на вход, админку и выкат.

экраны — настоящий интерфейс · данные на них демонстрационные
02 — как это выглядит
OnyxFit, экран дня: калории и БЖУ, совет из разбора дня, поиск еды
01День: калории, БЖУ и главный совет
OnyxFit, итог тренировки: рекорды, время, поднятый вес
02Итог тренировки: рекорды и поднятый вес
OnyxFit, обхваты тела: фигура с лентами и изменения
03Обхваты: лента видит то, чего не видят весы
OnyxFit, статистика тренировок: тоннаж и группы мышц
04Месяц тренировок: тоннаж и группы мышц
05Админка: кто пользуется приложением и чем именно
Админка OnyxFit, «Приложение»: активные по дням и чем пользуются
экраны — настоящий интерфейс · данные на них демонстрационные