Расчёт приблизительный: усреднённые значения продуктов из меню, погрешность ±10–15%. Считаются только отмеченные приёмы пищи.
Углеводное чередование
0/5
Вес и скользящая средняя
—Средняя 7 дн
—Сегодня
—Кг в неделю
замерысредняя за 7 дней
Ориентируйся на среднюю за 7 дней, а не на цифру дня: суточные колебания воды дают ±1.5 кг. Здоровый темп сушки — 0.5–1% массы тела в неделю.
Отдых между подходами
Таймер считает по реальному времени и переживает блокировку экрана. По окончании — звук и вибрация. Пока он идёт, экран не гаснет.
Push / Pull / Legs
0/7
Активность вне зала
0%
шагов из 10 000
Введи шаги из приложения здоровья или шагомера. Цель закрывается автоматически при достижении нормы.
Гидратация
0%
0.0/ 4.0 л
Осталось 4.0 л
Каждое деление — 250 мл, цель меняется в настройках. Держи 250–500 мл в час и 500–700 мл на тренировке.
Витамины и добавки
0/9
D3 и Омега-3 — только с едой, содержащей жир. Цинк и магний — вечером, отдельно от кальция и железа. Креатин — ежедневно, включая дни отдыха.
Анализы: цифры и динамика
Референсы приблизительные и различаются между лабораториями — сверяйся с бланком своей. Приложение не ставит диагнозов: отклонения обсуждай с врачом.
Лордоз и осанка · 5 мин
0/3
Гиперлордоз — укороченные сгибатели бедра спереди и слабые пресс с ягодицами сзади. Тянем то, что спереди, укрепляем то, что сзади.
Таймер удержания
00:30
Серия и статистика
0Дней подряд
0Рекорд серии
0%Среднее за 30 дн
День идёт в серию при выполнении 70% плана и выше. Пропуск обнуляет серию — рекорд остаётся.
Календарь
—
ПнВтСрЧтПтСбВс
меньшебольше
Нажми на день, чтобы увидеть выполнение плана, воду, вес и рабочие веса той тренировки.
BODY LAB v3 · данные хранятся на устройстве и синхронизируются с облаком, если оно подключено.
00:00Отдых
—
—
Техника — работает без интернета
—
YouTube не разрешает встроенный плеер, когда страница открыта как файл с диска — это ошибка 153. Открой приложение по адресу http:// или https:// — и видео заиграет прямо здесь.
Не авторизованОткрой приложение в Telegram или войди через виджет
Внутри Telegram Mini App вход автоматический. Виджет работает только по https и с доменом, заданным боту через /setdomain у @BotFather. Подпись Telegram проверяется только на сервере — здесь профиль используется как идентификатор, а не как защита.
Облако: Supabase Auth
Вход не выполненСинхронизация выключена
Облако уже настроено — вход происходит автоматически при открытии в Telegram. Вводить ничего не нужно.
Воркер проверяет подпись Telegram на сервере и сам выдаёт сессию — ни пароля, ни ключей вводить не нужно. Работает только внутри Telegram.
Запасной вход по паролю
Пароль не сохраняется — приложение хранит только токен сессии и обновляет его само. Токен лежит отдельно от данных и не попадает ни в бэкап, ни в облако.
Таблица и политики (SQL Editor в Supabase):
create table public.bodylab (
user_id uuid primary key
references auth.users on delete cascade,
data jsonb not null,
updated_at bigint not null
);
alter table public.bodylab enable row level security;
create policy "read own" on public.bodylab for select
using (auth.uid() = user_id);
create policy "insert own" on public.bodylab for insert
with check (auth.uid() = user_id);
create policy "update own" on public.bodylab for update
using (auth.uid() = user_id)
with check (auth.uid() = user_id);
-- доступ только вошедшим; anon не получает ничего
grant select, insert, update
on public.bodylab to authenticated;
revoke all on public.bodylab from anon;
Теперь строка привязана к твоему аккаунту: даже с anon-ключом чужой не прочитает и не перезапишет её. В Authentication → Providers → Email выключи «Allow new users to sign up», а себя заведи вручную через Add user.
Цели и цикл
Автоподбор дня цикла4-дневное чередование считается от даты старта
Автозапуск отдыхатаймер стартует после отметки подхода
Звук таймерасигнал за 10 сек и в конце отдыха
Не гасить экран в залепока открыта вкладка «Зал»
Уведомление о конце отдыхаесли приложение свёрнуто
Во весь экранприложение занимает экран целиком
Доступ
——
Чтобы закрыть вход для чужих, впиши свой ID в блок ACCESS в самом начале файла: allow: [твой_id]. Там же меняется контакт поддержки. Это скрывает интерфейс, но не шифрует страницу: данные защищает то, что они лежат в твоём браузере, а ключ облака не записан в файле.
Конструктор и редактор программ
——
Здесь меняются сплиты, упражнения, подходы, видео, дни цикла и состав приёмов пищи. История тренировок при этом сохраняется: она привязана к внутренним идентификаторам, а не к названиям.
Данные
Бэкап — JSON со всей историей, весами и анализами. Держи копию: очистка данных браузера стирает локальное хранилище без предупреждения.
Подтверди действие
—
Доступ по приглашению
Это личное приложение. Чтобы получить доступ, напиши в поддержку и передай свой Telegram ID.