Задача
Сделать на заказ для дипломного проекта учебную платформу по SQL: преподаватель создаёт учебные базы данных и задания, студенты пишут запросы, а система сама проверяет их и ставит баллы.
Что сделано
– бэкенд на Go: REST API, авторизация JWT с refresh-токенами, роли преподавателя и студента;
– учебные базы данных: преподаватель собирает таблицы, колонки и строки прямо в интерфейсе, видит, в каких работах используется база;
– задания: описание, баллы, эталонный SQL-запрос; перед сохранением запрос проверяется на выбранной базе;
– автоматическая проверка ответа студента: результат его запроса сравнивается с результатом эталона;
– работы двух типов, тренировка и тестирование: группа, даты начала и дедлайна, лимит времени, попытки, продление;
– кабинет студента: предстоящие, активные и завершённые работы, оценки и статусы;
– статистика по группе, по работе и по студенту, оценки и попытки;
– группы и управление пользователями.
Зачем
Проверять SQL-запросы вручную долго: у каждого студента своя формулировка, а правильный ответ один. Платформа сравнивает результат, а не текст запроса, поэтому засчитывает любое верное решение.
Результат
Платформа работает: преподаватель выдаёт группе работу, студенты решают задания с таймером, баллы и оценки попадают в статистику.