Я делаю бесплатное приложение календаря домашних силовых тренировок
Этот текст написан в Сообществе, в нем сохранены авторский стиль и орфография
Исходные данные
Полгода назад я писал на Т—Ж статью про то, как похудел за 9 месяцев на 31 кг.
С тех пор понял, что с работы над жиром пора переключаться на мышечную массу. Нарастить её гораздо сложнее, чем избавиться от жира. За полгода мой вес вырос на 3 кг. Как понять, что из них больше мышц, чем жира — улучшение результатов (например, подтягивания увеличились с 9 до 11 раз). У меня есть фото из августа 24 года(сверху), где вес был 88 кг и актуальное фото с весом 89 кг(снизу). По нему видно, что это не просто +1 кг жира.
Создание
Я работаю фронтенд-разработчиком. До этого я уже писал пет-проекты, например, делал интернет-магазин и библиотеку компонентов. Для того, чтобы разработка шла веселее, параллельно на ютуб канале снимал про это видео и делал трансляции.
5 месяцев назад я начал писать приложение, чтобы сохранять результаты своих тренировок. Особенность в том, что я тренируюсь дома — у меня ограниченный набор оборудования и ещё более ограниченное количество времени, которое я трачу на занятия — судя по статистике в приложении, около 6 часов в месяц. Среднее занятие длится 40-45 минут.
Цель приложения — добавить ценности и осмысленности тренировкам, дать дополнительную мотивацию, сделать нормальное планирование.
Итоги и планы
Фронт: Typescript, Vite, Vue, Tanstack Query, Vitest
Бэк: Typescript, Fastify, Mongoose, MongoDB, Swagger
Название: app-fit
Я стараюсь соблюдать какую-то грань между скоростью и качеством, например, использую более-менее расширяемую архитектуру, пишу юнит-тесты (уже 370), но не сильно пока работаю над обработкой ошибок, дизайном и маркетингом.
Сейчас в приложении можно регистрироваться, добавлять своё оборудование, выбирать веса для каждого упражнения по-умолчанию.
Вы формируете занятие из доступных упражнений, выбираете вес и количество повторов, можно добавлять сеты из разных упражнений, можно добавлять сразу несколько подходов одного упражнения. Затем сразу начинаете занятие или добавляете его в календарь.
В процессе выполнения занятия вы запускаете и останавливаете таймер. Благодаря этому сохраняется статистика по среднему времени выполнения каждого упражнения. Это даёт возможность видеть примерную длительность будущих занятий ещё при планировании.
На экране статистики есть календарь, графики и таблица с упражнениями. Отдельно упомяну таймлайн каждого занятия во всплывающем окне внутри календаря. Наглядно видно, как проходило занятие, какие были перерывы на отдых. Занятия можно копировать, информацию о том, что было внутри одного занятия также можно скопировать в буфер обмена, чтобы, например, скинуть в удобном виде своему тренеру в телеграм.
Сейчас функциональность покрывает большинство моих потребностей, но в планах внедрение функциональности:
- — мультиязычность;
- — добавление пользователями своих упражнений;
- — корректировка веса, использованного в подходе;
- — редактирование занятия в процессе его прохождения;
- — тип пользователя "Тренер", с возможностью планировать тренировки подопечных;
- — оффлайн-режим;
- — таймер времени отдыха;
Приложение бесплатное, с открытым кодом. Буду рад конструктивной критике по функциональности, юзабилити и архитектуре.








