171.78K

LMS

1.

УЧЕБНЫЙ ПРОЕКТ
LMS — Система управления обучением
Современная платформа для онлайн-обучения
Разработчики:
Некрасов Арсений, Пичугин Егор

2.

Цель и задачи проекта
Цель проекта
Создать удобную веб-платформу для взаимодействия
Ключевые задачи
Разграничение ролей пользователей
преподавателей и студентов в процессе онлайн-обучения.
Система позволяет управлять курсами, уроками, заданиями и
отслеживать успеваемость.
Создание и управление курсами
Автоматическая проверка кода через нейросеть
Система баллов и рейтинга
Уведомления о событиях

3.

Роли пользователей
Система поддерживает две роли: преподаватель и студент. Каждая роль имеет собственную панель управления и набор
доступных функций.
Преподаватель
Студент
Создаёт курсы и уроки
Изучает учебные материалы
Добавляет блоки с теорией и заданиями
Отправляет решения заданий
Видит список студентов с баллами
Получает оценки и видит рейтинг
Может отчислять студентов с курса

4.

Структура курса
Иерархия контента
Редактирование контента
Курс
Урок
Содержит несколько
Состоит из блоков
уроков
двух типов
Блок теории
Блок задания
Учебный материал с
Отправка кода и
форматированием
получение оценки
Преподаватель может добавлять изображения и файлы к
блокам. Для редактирования реализован визуальный
редактор с полным форматированием текста:
Выбор шрифтов и размеров
Настройка цветов текста
Вставка и управление изображениями

5.

Система баллов и рейтинга
Каждое задание оценивается от 0 до 100 баллов. Баллы суммируются по формуле «деление на 1000» и формируют
итоговый рейтинг студента.
100
0.100
0.012
Максимум баллов
Пример конвертации
Малый результат
за одно задание
100 баллов = 0.100
12 баллов = 0.012
Для студента
Для преподавателя
Студент видит накопленные баллы по каждому курсу и
Преподаватель видит список всех студентов с баллами и
общий рейтинг в системе.
может отчислять студентов с курса.

6.

Интеграция с нейросетью
Принцип работы
Нейросеть выступает как строгий преподаватель: не пишет правильный код, а только указывает на:
Ошибки логики
Нарушения стиля кода
Проверка происходит без перезагрузки страницы через AJAX-запросы

7.

Динамический интерфейс
Пользовательский интерфейс оптимизирован для быстрой и комфортной работы без лишних перезагрузок страницы.
Живой поиск
Копирование кода
Уведомления
Поиск студентов по email с
Копирование решений в буфер
Автоматическое обновление
задержкой 500 мс для
обмена одним кликом —
счётчика уведомлений каждые
оптимизации количества
удобно для работы с кодом.
30 секунд без перезагрузки
запросов к серверу.
страницы.

8.

Технический стек
Бэкенд
Фронтенд и прочее
Python + Flask
HTML + CSS + Bootstrap
Основной фреймворк для построения веб-приложения
Адаптивная вёрстка для всех устройств
SQLAlchemy + SQLite
Jinja2
ORM для работы с базой данных
Шаблонизатор для динамической генерации страниц
Flask-Login
AJAX API
Аутентификация с шифрованием паролей
Эндпоинты для асинхронных запросов без перезагрузки
Файлы хранятся в отдельных папках блоков курса
English     Русский Rules