Умный таймер медитаций для школы на GetCourse
Клиенту нужно было дать ученикам удобный способ считать время медитаций прямо внутри уроков на GetCourse, потому что по программе у них есть строгие требования:
— сколько минут медитации нужно выполнить в каждом уроке,
— сколько часов нужно накопить за весь курс.
Чтобы ученик не вел учёт вручную, требовалось создать умный таймер, который сам фиксирует всё нужное время и показывает прогресс по урокам, модулям и программе в целом.
Что именно хотел заказчик
1. Таймер, который работает сам
- Если в уроке есть аудио-медитация — таймер должен запускаться автоматически вместе со звуком.
- Если человек медитирует в тишине — таймер можно включить вручную.
- Таймер — на фиксированное время: 5, 10, 15 или 20 минут.
- Секундомер — просто считает минуты, пока пользователь медитирует.
В конце должен быть мягкий звук гонга.
По клику на иконку «i» — всплывающая подсказка с объяснением, как пользоваться таймером.
Таймер должен автоматически сохранять:
Если ученик набрал нужное время — урок помечается галочкой.
5. Аккордеон с модулями и уроками
- Модули раскрываются списком.
- Каждый урок показывает своё время + сколько студент уже сделал.
- Из списка можно перейти на урок.
Если ученик медитирует больше нормы — всё идёт в общий зачёт.
Система должна работать независимо для трёх больших программ: у каждой свои модули, количество уроков и нормы по минутам.
8. Работа не только в браузере, но и в приложении GetCourse
Таймер и прогресс должны работать и в веб-версии GetCourse, и в приложении Chatium.
Что я сделал
Я создал полноценную систему учёта медитаций внутри GetCourse — от умного таймера до визуального прогресса по урокам, модулям и целым программам.
Фактически это мини-приложение, встроенное в обучающую платформу.
1. Разработал умный таймер
- Автоматически запускается, когда ученик включает аудиомедитацию.
- Может запускаться и вручную — как секундомер или таймер.
- Автоматом фиксирует прогресс каджые 10 сек.
- Работает и в браузере, и в приложении GetCourse.
2. Реализовал точный подсчёт времени
Таймер считает секунды, минуты и часы без пропусков — даже если:
Все данные сохраняются в базе и синхронизируются между устройствами.
3. Связал таймер с аудиомедитацией
Я реализовал глубокую интеграцию таймера с аудиоплеером внутри уроков. Теперь всё работает полностью автоматически:
- таймер автоматически стартует при включении аудиомедитации,
- при перемотках и остановках аудио таймер сам подстраивается,
- если таймер запущен без аудио, то при завершении отсчёта звучит «гонг» сигнализирующий о том, что время вышло.
3. Настроил автоматический учёт времени по урокам
Каждый урок получает собственную статистику:
- сколько минут медитации выполнено,
- сколько нужно по программе,
- достигнута ли норма (появляется галочка).
4. Построил систему прогресса по модулям
Для каждого модуля я настроил:
- суммирование времени по всем урокам,
- определение, выполнен ли модуль,
- отображение прогресса в удобном формате.
5. Добавил общий прогресс по тренингу
- общий накопленный объём медитаций,
- сколько осталось до нормы,
- прогресс по всем модулям и урокам в виде удобного аккордеона.
6. Реализовал аккордеон с модулями и уроками
- отображаются все уроки с их нормами,
- показано, сколько ученик уже сделал,
- есть ссылки на уроки,
- видно, какие уже закрыты галочкой.
7. Учёл особенности трёх программ
Я сделал таймер, который корректно работает для всех трёх направлений независимо.
8. Адаптировал под реальную механику ГК
Учитывая ограничения GetCourse, я подключил логику учёта к GC API и собственной базе, оптимизировал работу таймера под фронт и бэкенд.
Итоги
В результате была создана полноценная система учёта медитаций, которая полностью избавила студентов от ручного подсчёта времени и сделала процесс прохождения программы прозрачным и удобным.
- сколько времени они уже медитировали,
- сколько осталось до норм по уроку, модулю и всей программе,
- какие уроки закрыты и где нужно добрать минуты.
Таймер работает автоматически, запускается вместе с аудио, корректно реагирует на перемотку, паузу и ручной режим, а прогресс синхронизируется между уроками, модулями и тремя независимыми тренингами. Всё это работает как в вебе GetCourse, так и в приложении Chatium.
- рост вовлечённости в практику,
- повышение завершения уроков и модулей,
- меньше вопросов от учеников о том, как учитывать время,
- полностью автоматизированный и честный учёт медитаций без участия менеджеров.
Проект превратил сложный процесс подсчёта времени в простой и интуитивный инструмент, который работает «сам по себе» — студенту остаётся только медитировать.
Видеоотзыв заказчика
Если перед вами стоит сложная, нестандартная или «невозможная» задача — скорее всего, её можно решить. Просто напишите мне 👉 @DmitrySpace