Кабинет репетитора внутри Telegram
Выдать задачи, проверить фото решения, увидеть, на чём ученик спотыкается второй месяц подряд. Там же, где вы с ним и так переписываетесь — ставить и регистрировать ничего не нужно.
Выдать домашку — четыре касания
Выбираете учеников (можно нескольких сразу — уйдёт одно и то же ДЗ), предмет, тему. Дальше — список подтем, и в нём сразу видно, сколько задач осталось невыданных именно этому ученику.
- «28 новых / 30 всего» — новое считается от того, что ученик уже получал. Повторить пройденное можно, но это отдельный режим, а не случайность.
- Для каждой подтемы отдельно — уровень 1–5 и количество задач. Одно ДЗ может смешивать темы и сложности.
- Уходит ссылками, PDF-файлом или и тем и другим. PDF собирается с условиями и заголовками секций по подтемам.
Ошибки перестают теряться между занятиями
Ученик присылает фото решения. Репетитор листает их как сторис и одним касанием ставит: «ОК», «ошибка», «переделать», «разобрать на уроке» — и вешает тег ошибки. Теги копятся и превращаются в карту.
- Темы сортируются по серьёзности: где ошибок больше — тем краснее карточка, зелёная означает «закрыто».
- Тренд ошибок за 7 или 30 дней показывает, становится лучше или хуже.
- Кнопка «Отчёт родителям» собирает сводку по ученику; раз в месяц она может уходить сама.
Ученик видит не «оценку», а движение
У ученика тот же самый прогресс, только со своей стороны: сколько дней подряд он занимался, какой процент темы закрыт, что именно нужно переделать и почему.
- Проценты по темам считаются от проверенных задач, а не от выданных — закрытая тема означает «сдано», а не «отправлено».
- Разбор ошибок у ученика тот же, что у репетитора: он видит собственную карту и может фильтровать «проблемные / в работе / готово».
- Ближайшее занятие и напоминания приходят обычными сообщениями от бота — за сутки и за час.
Формулы повторяются между занятиями
Отдельный тренажёр: формула, её смысл и вопрос — в каких единицах величина, что откуда следует. Разделы повторяют школьный курс: механика, МКТ, термодинамика, электродинамика.
- Формулы набираются KaTeX, а не картинками — читаются одинаково на любом экране.
- Статистика по разделу сбрасывается, если перестать заниматься: это тренажёр повторения, а не разовый тест.
- Туда же репетитор кладёт свои файлы — конспекты, шпаргалки, разборы — адресно конкретному ученику.
Расписание, которое помнит и про деньги
Неделя занятий в сетке: у каждого ученика свой цвет, галочка означает оплаченное занятие. Сверху — сколько за месяц уже получено и сколько ещё висит.
- Цена ставится прямо на занятии, отметка об оплате — одним касанием там же.
- За сутки и за час до урока напоминание уходит и ученику, и репетитору.
- К занятию можно приложить ссылку на видеозвонок — она придёт ученику сама, перед уроком.
Две роли — одно приложение
Репетитор
Заходит первым и приглашает учеников одноразовой ссылкой. Регистрация ученика — переход по ней, больше ничего.
Ученик
Видит только своё: задания по темам, что проверено, что нужно исправить, когда ближайшее занятие.
Как это устроено внутри
Бот и мини-приложение — одно целое
aiogram 3 для бота, FastAPI для Mini App, PostgreSQL на проде. Уведомления приходят в чат, а экраны открываются поверх него.
Вход только через Telegram
Ни паролей, ни почты. Подпись initData проверяется HMAC-SHA256 на каждом запросе, сессия живёт час.
240 автотестов
Выдача ДЗ, проверка решений, расписание и биллинг закрыты тестами на отдельной временной базе.
Задачи — настоящие
Банк собран парсером с открытых каталогов «Решу ОГЭ / ЕГЭ»: ссылка, краткое условие, картинка условия там, где она есть.
Сложность размечена вручную
Для физики ОГЭ уровни 1–5 проставлены руками — 1824 задачи. Остальные предметы распределены автоматически по подтемам.
Дизайн-система зафиксирована
Один индиго-акцент, заливка вместо обводок, ни одной тени. Эта страница собрана на тех же токенах, что и приложение.
Ученики и репетиторы на скриншотах — демонстрационные: имена заменены, аватары скрыты. Всё остальное на экранах настоящее.
Репетитор занимается учеником. Остальное берёт на себя приложение.
Откройте бота, зарегистрируйтесь как репетитор и пригласите первого ученика ссылкой — это занимает пару минут.
Открыть бота в Telegram