Платформа онлайн-школы EasyKnow: от бронирования урока до выплат преподавателям
Личный кабинет для учеников, преподавателей и администраторов: расписание, видеоуроки, домашние задания с ИИ, оплата пакетов и автоматические выплаты преподавателям. Проект с нуля, без готовых LMS.
Задача
EasyKnow запускала онлайн-школу с индивидуальными занятиями: подготовка к ОГЭ, ЕГЭ и ВПР по десяти предметам плюс английский и китайский. Готовые LMS не подходили: в них нет продажи пакетов уроков, гибкого расписания преподавателей с отпусками и переносами, а видеосвязь и проверка домашних заданий живут в разных сервисах. Школе нужен был один продукт, где ученик записывается, платит, занимается и видит прогресс, а преподаватель ведёт уроки и получает выплаты без ручной бухгалтерии.
Мы взяли проект целиком: проектирование, дизайн интерфейса, бэкенд, фронтенд, интеграции с платёжной системой и облачными ИИ-сервисами, инфраструктуру для видеосвязи и дальнейшее развитие. Платформа запущена в июле 2024 года и с тех пор растёт: за последние десять месяцев в ней больше 960 коммитов и 111 миграций базы данных.
Что сделали
Кабинет ученика: расписание, прогресс, следующий шаг
Главный экран отвечает на три вопроса: когда следующий урок, сколько занятий осталось в пакете и что задано. Календарь на FullCalendar показывает прошедшие и будущие уроки по предметам, фильтруется и учитывает часовой пояс ученика. Уведомления о переносах, домашних заданиях и сообщениях приходят в шапку кабинета в реальном времени через WebSockets.
Бронирование уроков по слотам преподавателя
Ученик выбирает предмет, тариф и удобные дни с интервалами времени, после чего система подбирает преподавателей со свободными слотами. Сервис проверки конфликтов не даёт поставить два урока на одно время, а при отпуске преподавателя занятия переносятся автоматически с подтверждением администратора. Перенос и отмена урока доступны обеим сторонам по правилам школы.
Комната урока: видео, заметки и доска в одном окне
Видеосвязь работает на собственном сервере Jitsi Meet с JWT-авторизацией, а для учеников с проблемной сетью подключён Яндекс Телемост: ссылка создаётся автоматически перед уроком. Рядом с видео открываются совместные заметки с вкладками (одновременное редактирование построено на операционных преобразованиях), доска и чат. После урока аудио расшифровывается через Yandex SpeechKit, а YandexGPT собирает конспект занятия.
Домашние задания: 16 типов упражнений и проверка ИИ
Преподаватель собирает задание из блоков: вставить слова в текст, исправить ошибку, сопоставить пары, порядок слов, перевод, чтение с вопросами и ещё десяток форматов. Черновик задания под тему может сгенерировать YandexGPT, он же проверяет свободные ответы и объясняет ошибки. Есть дедлайны с продлением, пересдачи, шаблоны заданий и оценка с обратной связью.
Словарь ученика с тренажёром
Слова из уроков попадают в личный словарь с переводом через Yandex Translate и примерами от ИИ. Тренажёр в пять этапов закрепляет лексику: выбор перевода, обратный перевод, ввод по памяти. Прогресс по словам виден и ученику, и преподавателю.
Биллинг: пакеты уроков, чеки, автопродление и выплаты
Оплата через эквайринг Т-Банка с формированием чека по 54-ФЗ прямо при создании платежа. Ученик покупает пакет уроков с лимитом занятий в неделю, подписка продлевается автоматически, возвраты оформляются отдельным типом платежа. По каждому проведённому уроку преподавателю начисляется вознаграждение на внутренний баланс, а раз в две недели система формирует выплаты. Администратор видит всё это в панели на MoonShine: 30 разделов от пользователей и уроков до платежей и аудит-лога.
Как это устроено внутри
Очереди и события
Генерация и проверка ДЗ, транскрипция, конспекты и создание видеокомнат выполняются в очередях на Redis под управлением Horizon. 26 доменных событий связывают модули: завершённый урок начисляет вознаграждение, перенос рассылает уведомления.
Реальное время
Laravel Reverb как собственный WebSocket-сервер: чат, индикатор набора текста, обновление уведомлений и совместные заметки без опроса сервера.
Планировщик
Около десяти фоновых задач: автостарт и автозавершение уроков, напоминания ученикам и преподавателям, выдача ссылок на Телемост, двухнедельные выплаты, очистка аудио.
Групповые занятия
Отдельный модуль с группами, групповыми тарифами, посещаемостью и домашними заданиями для класса, не ломающий логику индивидуальных уроков.
Международность
Интерфейс на пяти языках (ru, en, de, fr, ar), часовые пояса на уровне пользователя, PWA с офлайн-страницей.
Безопасность и учёт
Вход по SMS-коду, двухфакторная защита, журнал действий администраторов, разделение ролей ученик/преподаватель/администратор.
Результат
- Школа работает на платформе с июля 2024 года: 97 учеников, 35 преподавателей и от 150 до 300 уроков в месяц проходят через расписание, видеокомнаты и домашние задания без сторонних сервисов.
- Оплата, продление пакетов, чеки и выплаты преподавателям идут автоматически. Администратор управляет школой из одной панели, а не из таблиц и мессенджеров.
- Платформа продолжает развиваться: групповые занятия, ИИ-конспекты уроков и словарь-тренажёр появились уже после запуска, без переписывания ядра.
«Мы получили не «сайт с личным кабинетом», а рабочий инструмент школы. Расписание, оплаты и домашние задания перестали быть ручной работой, а новые идеи вроде ИИ-проверки заданий команда CasperLab внедряет за недели.»
Руководство EasyKnow
Нужен похожий проект?
Опишите задачу: оценим сроки и бюджет, покажем релевантные работы под NDA.
