openGym: приложение для отслеживания тренировок и веса без облака
openGym — это саморазвёртывающееся приложение для отслеживания тренировок и веса без привязки к сторонним серверам.
С его помощью можно планировать тренировки, выполнять управляемые упражнения и отслеживать прогресс в виде графиков. В отличие от множества облачных сервисов, openGym полностью контролируется пользователем и не требует подписки или рекламы. Поддержка работы с PWA и возможность развертывания через Docker (docker compose up) упрощают процесс установки и использования на любых устройствах.
Проект будет полезен тем, кто ведёт активный образ жизни и хочет иметь под контролем свои тренировки и физическое состояние, уделяя внимание безопасности и конфиденциальности данных. Учти, что это приложение находится на ранней стадии развития, так что могут быть недочёты или недостаток некоторой функциональности.
Проект openGym — это тренажёрный зал и трекер веса тела, который ты можешь полностью контролировать. Он предназначен для самостоятельного развертывания (self-hosted), что позволяет избегать зависимости от сторонних серверов и подписок. С помощью openGym ты можешь планировать свои тренировки, следить за прогрессом и регистрировать свои тренировки на любом устройстве, поддерживающем доступ через браузер.
Преимущества
openGym предлагает множество функций, среди которых:
- Трекинг веса тела с интерактивной диаграммой.
- Планирование тренировок на каждый день с библиотекой из более чем 1300 упражнений.
- Поддержка индивидуальных тренировок с распорядком на каждый день.
- Гидируемые тренировки с авто-заполнением предыдущих данных.
- Ограничение жёсткого алгоритма на выполнение повторений и продвинутые функции прогрессии.
- Возможность создания собственных упражнений.
- Анализ активности с помощью тепловых карт и диаграмм.
- Поддержка уведомлений и входа через passkey (без паролей).
- Поддержка нескольких языков.
Установка и запуск
Для запуска openGym тебе понадобится Docker с Compose. Установи Docker, затем выполни следующие команды:
git clone https://github.com/DuarteSantos8/openGym
cd openGym
cp .env.example .env
docker compose pull
docker compose up -d
После этого открой http://localhost:8080, создай профиль — и ты готов к тренировкам. Первый запуск загрузит медиафайлы упражнений (~140 МБ).
Мобильное приложение
openGym также доступен в виде отдельного мобильного приложения для Android (APK для sideload). Для iPhone доступна версия PWA, которую можно установить в виде веб-приложения. Все данные хранятся на устройстве, без необходимости в аккаунтах и сервере.
Как это работает
Приложение состоит из веб-интерфейса (React), API на Node.js и nginx для сервировки статических файлов и проксирования запросов к API. Все данные хранятся в формате JSON на хосте, что обеспечивает простоту резервного копирования и контроля данных.
Ограничения
Несмотря на широкие возможности, openGym требует определённых технических навыков для установки и настройки, особенно если ты планируешь доступ извне через интернет. Для этого необходимо настроить HTTPS-домен, а также иметь соответствующий опыт работы с Docker и системами самоуправления данными.
openGym — это мощный инструмент для тех, кто хочет держать свои данные под контролем и избавиться от подписки на сторонние сервисы. Все функции доступны твоему пользовательскому аккаунту без роялти и скрытых платежей.
Радар проекта: 52 из 100 — рабочий, но с оговорками
- Импульс 47 ≈ 11 звёзд в день
- Темп разработки 0 0 коммитов за 12 недель
- Зрелость 19 проекту 3 месяца, релизов нет
- Сообщество 48 1 участник, 1197 форков
- Свежесть 50 последний коммит — 3 месяца назад
- Быстрый старт 75 есть: команда установки, Docker
- Готовность к продакшену 40 автосборка
- Безопасность и доверие 80 лицензия AGPL-3.0, SECURITY.md
- Документация 100 README 15 тыс. знаков, 13 разделов, папка docs
- Экосистема 58 47 подписчиков на обновления, 0 тем
Как считаем
Только открытые данные GitHub на 31.10.2026, без оценок нейросети. Каждая ось — от 0 до 100, итог — среднее.
- Импульс — звёзд в день: за время наших замеров, а пока их нет — за всю жизнь проекта; 200 в день — максимум.
- Темп разработки — коммитов за последние 12 недель; 300 — максимум. Пока GitHub не досчитал статистику, ось не учитывается.
- Зрелость — возраст проекта (3 года — максимум) и число релизов (30 — максимум), поровну.
- Сообщество — участников с коммитами (200 — максимум) и форков (5000 — максимум), поровну.
- Свежесть — дней с последнего коммита: сегодня — 100, полгода и больше или архив — 0.
- Быстрый старт — в README есть команда установки, раздел «быстрый старт» или примеры использования, в репозитории — Docker и папка примеров, у проекта есть сайт или демо.
- Готовность к продакшену — релизы, версия 1.0 и выше, автосборка (GitHub Actions), тесты, лицензия, журнал изменений.
- Безопасность и доверие — открытая лицензия (своя — половина балла), политика безопасности (SECURITY.md), проект организации, правила для участников, не в архиве.
- Документация — объём и структура README, папка docs или сайт, оценка «здоровья сообщества» GitHub.
- Экосистема — звёзды (50 тыс. — максимум), подписчики на обновления (1000 — максимум), темы репозитория.
Открыть на GitHub: arvids-unavailable/openGym →
RepoRadar