Как забрать свои данные у фитнес-гигантов и развернуть собственную систему трекинга здоровья
Вы когда-нибудь задумывались, сколько информации о вашем теле знают сторонние корпорации? Каждый съеденный завтрак, каждый пройденный шаг и даже циклы сна — всё это хранится на серверах MyFitnessPal, Fitbit или Google. И ладно бы просто хранилось, но доступ к этим данным часто становится платным, а приватность остается под вопросом. Знакомая ситуация, когда за базовый график веса просят подписку?
Если вам, как и мне, хочется полного контроля над своими метриками, то проект SparkyFitness — это именно то, что «доктор прописал». Это self-hosted альтернатива популярным фитнес-трекерам, которая позволяет развернуть полноценную экосистему мониторинга здоровья на собственном сервере.

Что такое SparkyFitness и зачем он нужен разработчику
SparkyFitness — это не просто «еще один калькулятор калорий». Это амбициозная попытка создать открытую платформу, которая объединяет веб-интерфейс, мобильные приложения и бэкенд в единую защищенную сеть.
Проект идеально подходит тем, кто:
- Ценит приватность. Ваши данные о здоровье не покидают ваш Docker-контейнер.
- Устал от подписок. Все функции доступны сразу и бесплатно.
- Любит автоматизацию. SparkyFitness умеет «дружить» с гаджетами и другими сервисами.
Интересно, что автор проекта CodeWithCJ не просто сделал веб-морду к базе данных, а реализовал полноценную поддержку мобильных платформ, что для self-hosted сегмента до сих пор редкость.
Пять причин присмотреться к SparkyFitness
1. Всеядность в плане данных
Проект закрывает практически все потребности в трекинге: от банального подсчета калорий и выпитой воды до детального мониторинга физических упражнений и антропометрических данных (вес, процент жира и т.д.). Есть даже система целей и ежедневных чекинов, которая помогает не забрасывать тренировки.
2. Бесшовная интеграция с носимыми устройствами
Главная проблема многих open-source проектов в этой нише — изоляция. SparkyFitness решает её через синхронизацию с:
- Apple Health (через нативное iOS приложение);
- Google Health Connect (для фанатов Android);
- Garmin, Fitbit и Withings.
Это значит, что ваши шаги и сон будут подтягиваться в систему автоматически, а вам останется только вводить данные о питании.
3. Искусственный интеллект на службе ЗОЖ (Beta)
Разработчики добавили SparkyAI — это чат-бот, который значительно упрощает жизнь. Вместо того чтобы искать «яблоко» в базе данных и выбирать его вес, вы можете просто написать в чат: «Съел два средних яблока и выпил латте». ИИ распознает контекст и внесет данные в лог. Более того, система поддерживает загрузку фотографий еды для автоматического распознавания блюд. Согласитесь, для пет-проекта это уровень!
4. Семейный доступ
В отличие от многих аналогов, SparkyFitness изначально проектировался с поддержкой нескольких профилей. Вы можете развернуть один сервер на всю семью, где у каждого будет свое пространство, но при этом сохраняется возможность «семейного» обзора прогресса.
5. Темная тема и современный UI
Казалось бы, мелочь, но пользоваться инструментом, который выглядит как современное SaaS-решение, гораздо приятнее, чем таблицей из 90-х. Интерфейс отзывчивый, чистый и поддерживает локализацию на множество языков, включая русский.
Техническая «начинка»
Проект написан преимущественно на TypeScript. Это отличный выбор для обеспечения типизации и стабильности в такой сложной системе, где много связей между API, фронтендом и мобилками.
Архитектура классическая и понятная:
- Backend: Node.js сервер, отвечающий за API и бизнес-логику.
- Frontend: Современное веб-приложение.
- Mobile: Нативные приложения для iOS и Android.
- Инфраструктура: Всё упаковано в Docker, что делает развертывание делом пары минут.
Как запустить систему за 2 минуты
Если у вас уже установлен Docker, процесс превращается в элементарную последовательность команд. В моей практике это один из самых простых в установке self-hosted проектов.
# Создаем рабочую директорию
mkdir sparkyfitness && cd sparkyfitness
# Скачиваем конфигурационные файлы
curl -o docker-compose.yml https://github.com/CodeWithCJ/SparkyFitness/releases/latest/download/docker-compose.prod.yml
curl -L -o .env https://github.com/CodeWithCJ/SparkyFitness/releases/latest/download/default.env.example
# Запускаем магию
docker compose pull && docker compose up -d
После этого ваш личный фитнес-центр будет доступен по адресу http://localhost:8080. Останется только настроить переменные окружения в .env (например, для работы AI-функций понадобится API ключ).
Стоит ли пробовать?
SparkyFitness сейчас находится в активной стадии разработки. Да, некоторые функции вроде ИИ-чатбота или детальной документации API еще в бете, но основной костяк работает на удивление стабильно.
Кому это подойдет:
- Self-host энтузиастам, которые хотят собрать все свои данные в одном месте.
- Разработчикам, желающим изучить, как строится экосистема «веб + мобилки + бэкенд» на TypeScript.
- Людям, заботящимся о приватности, для которых MyFitnessPal стал слишком навязчивым.
Проект подкупает своей открытостью и тем, насколько быстро он растет. Если вы давно искали повод сдуть пыль со своего домашнего сервера или Raspberry Pi — SparkyFitness отличный кандидат на роль «полезного сервиса на каждый день».
Загляните в репозиторий, поставьте звезду автору и, возможно, именно этот инструмент поможет вам наконец-то дойти до той самой формы, о которой вы мечтали с прошлого понедельника!
