Программа в скриншоте? wger: свои тренировки и питание для клуба
Программы тренировок, дневник питания, вес и фото прогресса у клиентов разбросаны по чужим приложениям. wger ставится на ваш сервер и имеет режим зала с тренерами. Разбираю, что он умеет, чего в нём нет и что делать с данными о здоровье.
Программа в скриншоте, питание в чужом приложении
Типичная картина в студии. Тренер собрал клиенту программу в таблице и отправил картинкой в мессенджер. Клиент считает калории в стороннем приложении, фото «до и после» лежат в его галерее, замеры в заметках. Через два месяца он пропал, и клуб не знает, что с ним происходило. История тренировок осталась у клиента в телефоне, а не у вас.
Если у клуба есть своя система, где живёт программа, дневник и прогресс, клиенту есть что терять при уходе, а тренеру есть что смотреть перед сессией. Как это устроено с удержанием, я разбирал в статье про IT для фитнес-клуба. wger закрывает именно эту часть и ставится на ваш сервер.
Что умеет wger и что у него внутри
Проект живёт в репозитории wger-project/wger. На 5 октября 2026 года у него около 7000 звёзд, последний релиз 2.7 вышел 3 сентября 2026, а последние коммиты в репозитории датированы 4 октября. Лицензия AGPL-3.0, код на Python и Django.
По описанию проекта и релиз-нотам умеет он следующее:
- программы тренировок с правилами автоматического прогресса нагрузки;
- дневник питания с подсчётом калорий по базе Open Food Facts;
- вес и произвольные измерения тела, в релизе 2.7 добавили графики, тренд и синхронизацию с Apple Health и Health Connect через мобильное приложение;
- галерея с фото прогресса;
- справочник упражнений и REST API для интеграций.
Для клубов есть режим зала. В коде модуля gym описаны права «тренер: видит пользователей зала» и «администратор: управляет пользователями зала», карточки договоров с типами и опциями, заметки администратора о клиенте, документы участника и настройка напоминания о долго не заходивших участниках. То есть тренер видит своих клиентов, а клуб ведёт базовую картотеку. Как в этом режиме разведены права между несколькими залами на одном сервере, я в бою не проверял.
Русский язык, упражнения и продукты
Папка перевода интерфейса на русский в репозитории есть, переводится сообществом через Weblate. Насколько он полон в версии 2.7, я не измерял, так что открывайте демо и смотрите глазами.
С упражнениями хуже. Я запросил API публичного сервера wger.de: из 3383 переводов названий упражнений на русском 10. Основная база английская, немецкая, испанская и французская. Для клуба это задача на неделю: перевести названия и описания базовых упражнений и загрузить их в свою копию.
С продуктами лучше. В публичной базе wger есть записи на русском, источник Open Food Facts, среди них товары с российскими штрихкодами. Совпадает ли калорийность с вашими таблицами и ГОСТами, я не сверял. Для клиентов с жёсткой диетой своих блюд и продуктов придётся добавлять самим.
Мобильные приложения есть в Google Play, App Store, F-Droid и Flathub, это следует из README проекта. Доступны ли они из российских аккаунтов в магазинах, я не проверял. Если нет, остаётся установка через F-Droid и веб-версия в браузере телефона.
Вес, замеры и фото: это данные о здоровье
Дневник питания, вес, обхваты и фото в белье для прогресса выглядят безобидно, пока клуб не начинает их хранить. Сами по себе эти сведения закон прямо не перечисляет. Но статья 10 закона 152-ФЗ выделяет специальную категорию данных, куда входит состояние здоровья. Обработка таких данных допускается, в частности, если субъект дал согласие в письменной форме. Надёжнее считать данные о весе и замерах, особенно если тренер использует их для рекомендаций по питанию, именно этой категорией и оформлять согласие письменно.
Вторая норма: часть 5 статьи 18 в действующей редакции не допускает хранение данных граждан РФ в базах за пределами России, с рядом исключений. Своя установка на сервере в России снимает вопрос, куда уезжают фото клиентов. Это довод за wger на вашем сервере в сравнении с зарубежным приложением, которое хранит данные у себя. Формулировку согласия и состав документов должен утверждать юрист.
Где это не сработает
Чего нет. Учёта абонементов, посещений и платежей в модуле gym я не нашёл: там карточки договоров с суммой и периодичностью списания, но это записи, а не касса. Для абонементов нужна отдельная система, например GYM One на своём сервере. Связку двух систем придётся делать самим, например через API.
Лицензия. AGPL-3.0 разрешает коммерческое использование. Но если вы доработали код и открыли доступ клиентам по сети, исходники изменённой версии нужно предоставить пользователям. Это важно, если планируете серьёзно переписывать интерфейс. Я бы советовал держать правки отдельными и небольшими.
Обслуживание. Production-сборка в Docker это приложение, прокси, база, кэш и очередь задач Celery, плюс отдельная команда настройки офлайн-режима. Релиз 2.7 разработчики сопроводили предупреждением о несовместимых изменениях для тех, кто ставит у себя. Обновляться вслепую нельзя: нужны бэкапы и проверка на копии.
Для клуба на 30 человек, где тренер ведёт клиентов в тетради, система может оказаться избыточной. Она окупается, когда клиентов десятки и тренеров несколько.
Что можно сделать уже сейчас
- Поднимите пробный стенд из репозитория wger-project/docker командой docker compose up -d на тестовом сервере и посмотрите режим зала на выдуманных клиентах.
- Попросите двух тренеров собрать по одной реальной программе с прогрессией и неделю вести её в приложении. Спросите, где им неудобно.
- Выпишите 100 упражнений и 50 продуктов, которые у вас реально встречаются. Это объём работы по переводу и наполнению.
- Подготовьте текст согласия на обработку данных о здоровье и покажите его юристу до первого клиента в системе.
Частые вопросы
wger заменит CRM клуба?
Нет, это дневник и программы тренировок. Абонементы, расписание и оплаты остаются в вашей учётной системе. Как собрать для клиента единое окно с абонементом и записью, описано в статье про личный кабинет клиента фитнес-клуба.
Можно ли поставить на сервер без Docker?
Готовый production-стек проект поставляет именно в виде Docker Compose, другие способы установки я не проверял. Для клуба я бы брал Docker: меньше ручной настройки и проще обновлять.
Нужно ли согласие, если клиент сам вводит вес?
Если данные попадают к вам на сервер и тренер их видит, вы оператор этих данных. Согласие оформляют до начала работы клиента в системе.
Коротко о главном
wger закрывает ту часть клубной жизни, которая сейчас размазана по чужим приложениям: программы, питание, вес, замеры и фото. Бесплатный открытый код, свой сервер и режим зала с тренерами. Минусы понятны: нет абонементов и оплат, нет русских упражнений, обновления требуют внимания, а данные клиентов требуют письменного согласия.
Мы разворачиваем wger, переводим упражнения, подключаем систему к вашему клубу под ключ и связываем с учётом абонементов. Подробности на странице автоматизации бизнеса. Напишите мне в Telegram кодовое слово «ТРЕНИРОВКИ», и я отвечу, что из этого подходит вашему залу.
Ещё open-source для бизнеса
Эта статья — часть каталога бесплатных решений, которые я разворачиваю на вашем сервере под ключ: CRM, аналитика, документы, почта, безопасность, магазины, AI.
Что я делаю для бизнеса
- Боты в Telegram, MAX, VK
- Автоматизация процессов и CRM
- Аналитика и дашборды
- Сайты и лендинги под ключ
Бесплатно: чек-лист «Готов ли ваш бизнес к 152-ФЗ»
12 пунктов, которые проверяют готовность за час: данные, согласия, уведомление в РКН, локализация, защита. Отметьте, что уже сделано, и увидите дыры, за которые сейчас штрафуют.
Готовы обсудить вашу задачу?
Бесплатная консультация — разберём, как внедрить это в вашем бизнесе под ключ. Без форм, пишите напрямую.
Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.


