Здоровье и спорт в трекерах обычно проваливаются одним из двух способов. Либо это красивый приватный график, которого никто не видит, — и в день, когда идти не хочется, ничто вас не тянет; либо это соцсеть незнакомцев, где поддержка обезличена, потому что поддерживающие вас не знают. Модуль спорта и здоровья в Korat живёт внутри приложения, которым вы уже пользуетесь для чатов, групп и ленты, поэтому аудитория субботнего заезда — те же люди, которые спросят про него в понедельник. Это и есть исходная посылка, и всё дальнейшее из неё следует.
Двенадцать активностей, и только четырём нужен GPS
Приложение записывает двенадцать видов: бег, ходьба, велосипед, поход, беговая дорожка, плавание, зал, йога, скакалка, футбол, бадминтон и бокс. Четыре из них — бег, ходьба, велосипед и поход — отслеживаются по GPS, потому что они перемещают вас по карте и маршрут действительно часть записи. Остальные восемь — нет, и приложение этого не изображает. У занятия йогой есть длительность и усилие, но нет ломаной линии. Если попросить GPS описать час бадминтона, выйдут каракули, а не данные.
Для этих четырёх во время тренировки видны живые дистанция, длительность и темп, с паузой, продолжением и остановкой. Маршрут рисуется на подложке OpenStreetMap по ходу, а не ждёт отрисовки итоговой сводки. Шаги берутся из собственного датчика устройства, а не выводятся из движения по GPS: счёт продолжает работать, когда телефон лежит в кармане в помещении, и не рушится, когда сигнал пропал между домами.
Цель ставится по уровню, а не числом, которое вы выдумали
При первом открытии раздела приложение задаёт два вопроса вместо пустого поля цели: цель из пяти вариантов и уровень из четырёх. Из этого ответа «два на два» получаются предложенные цели по каждой активности, которые потом можно переписать. Смысл такого захода в том, что большинство людей не может выбрать хорошую недельную дистанцию в первый день. Они выбирают амбициозную, промахиваются на второй неделе, и счётчик серии превращается в летопись провала. Вопрос «к чему вы готовитесь» и «откуда примерно стартуете» даёт достижимую первую цель, а достижимая — единственная, которая переживает встречу с настоящей неделей.
После знакомства цели живут по активностям: беговая цель и велосипедная — отдельные числа, а не один смешанный индекс формы. Прогресс показан кольцами по шагам, килокалориям и километрам плюс недельный столбчатый график, чтобы видеть, в какие дни вы действительно двигались, а не только итог. Серии считают идущие подряд дни, и, поскольку серия — самое мотивирующее и самое карающее число в любом фитнес-приложении, она стоит рядом с кольцами, а не заголовком.
Дневник для того, чего датчик не видит
Не всё важное — тренировка. Приложение ведёт дневник воды, веса, сна и прочего, заполняемый вручную, потому что ни один датчик телефона не скажет, сколько вы выпили и как спали. Это лежит рядом с историей тренировок в одном профиле здоровья, поэтому неделя, где упала и дистанция, и сон, читается как одна история, а не два несвязанных графика. Сам профиль здоровья держит постоянные факты — то, что не меняется день ото дня и не должно вводиться заново каждый раз.
Кудос и почему эта лента отдельная
Завершённые тренировки могут появляться в общей ленте активностей, где другие ставят кудос. Кудос — намеренно маленький жест: одно нажатие, без обязательной ветки комментариев и без счётчика, который значил бы что-то сверх «кто-то это видел». Спортивный эквивалент кивка на тропе. Отдельная лента, а не сброс в основную, — потому что у тренировок другой ритм: тренирующийся пять дней в неделю затопил бы общую хронику, а основная лента ранжируется своим алгоритмом, который с таким объёмом воевал бы.
Когда конкретную тренировку всё-таки хочется показать шире, есть редактор публикации. Он кладёт вашу подпись на выбранный фон и отправляет результат в ленту Korat, в историю, другу в чат или наружу в любое приложение на телефоне. Последний путь важен: смысл не в том, чтобы запереть достижение внутри Korat, а в том, чтобы сделать красивую карточку из настоящей записанной тренировки и позволить положить её куда захочется.
Что эти числа означают на самом деле
Дистанция и темп берутся из позиций GPS, снятых во время тренировки, а значит, наследуют обычное поведение GPS: точность зависит от открытости неба, и маршрут под навесом рынка будет выглядеть иначе, чем тот же маршрут в поле. Шаги идут с отдельного датчика устройства, поэтому счётчик шагов и дистанция по GPS имеют независимые источники. Килокалории — оценка, выведенная из активности, а не измерение: ни один телефон не измеряет расход энергии, и приложение подаёт эту цифру как один из трёх входов в кольца, а не как факт.
Здоровье есть только в приложении для Android. В веб-версии этого модуля нет, и это решение, а не незаконченная работа: одна запись требует непрерывного отслеживания положения при выключенном экране, а браузер по-настоящему этого не умеет. Половинчатая версия, теряющая маршрут на середине, хуже честного «откройте приложение» — честный вариант не стоит вам пробежки.
Пульса нет, и интеграции с носимыми устройствами нет. Korat читает GPS телефона и его датчик шагов — и больше ничего. Если вы тренируетесь с нагрудным датчиком или часами, эти данные в приложение не попадают, и приложение не станет делать вид, что знает ваши зоны.
Тренировки также зависят от того, что телефон с вами и что разрешён доступ к геопозиции. Отдельный экран объясняет, зачем запрашивается каждое разрешение Android, ещё до появления системного диалога, а отказ в геопозиции просто убирает четыре GPS-активности, а не закрывает модуль. Что именно собирают эти разрешения и зачем, подробно описано на странице конфиденциальности.
Как это встроено в остальное приложение
Спорт и здоровье — один модуль в одном приложении с одним аккаунтом. Друзья, которые ставят кудос, — те же друзья, что и в чатах; беговой клуб может быть обычной группой Korat с постами, ролями и заявками, а тренировка, которой вы поделились, падает в разговор этой группы обычным постом. Клуб, привязанный к одному виду спорта, с рейтингом и тренировочными встречами — отдельный модуль: спортивные клубы. Нет отдельного спортивного аккаунта, нет второго списка друзей и нет стороннего сервиса, который держал бы данные маршрутов, — они лежат на том же бэкенде Supabase, что и всё остальное.
По другую сторону прилавка работает та же механика: фитнес-зал или студия продаёт занятия через записи и пакеты, а рейтинг корпоративного бегового клуба складывается из тех же записанных здесь тренировок.
- Виды активности
- 12 — бег, ходьба, велосипед, поход, дорожка, плавание, зал, йога, скакалка, футбол, бадминтон, бокс
- С GPS
- бег, ходьба, велосипед, поход — живые дистанция, длительность, темп, карта маршрута
- Карта
- OpenStreetMap, рисуется прямо во время тренировки
- Шаги
- с датчика шагов устройства
- Кольца
- шаги · килокалории · километры
- Первый запуск
- одна цель из 5 вариантов × один уровень из 4
- Дневник
- вода, вес, сон и прочее
- Социальное
- общая лента активностей, кудос, редактор публикации