Платформа онлайн-обучения с системой управления контентом (CMS), системой регистрации студентов, инструментами для преподавателей, поддержкой кеширования, API и чатом на WebSocket.
Код соответствует требованиям PEP8.
- Создание моделей для CMS и управление ими.
- Применение фикстур к моделям.
- Наследование моделей для полиморфного контента.
- Упорядочивание курсов и модулей.
- Представления аутентификации.
- Использование форм на основе классов и примесей.
- Управление группами и правами.
- Поддержка перетаскивания модулей и их содержимого.
- Система регистрации студентов и управление зачислениями.
- Кеширование курсового контента.
- Поддержка Memcached и Redis.
- Django REST API для платформы:
- сериализаторы, вложенные сериализаторы;
- представления API и их разрешения;
- ViewSets и маршрутизаторы;
- аутентификация и requests-библиотека для потребления API.
- Реализация чата по WebSocket:
- Django Channels;
- WebSocket-потребитель и клиент;
- Redis как резидентное хранилище;
- асинхронный ASGI-сервер.
- Языки: Python 3, HTML5, CSS3, JavaScript.
- Фреймворки: Django, Django REST Framework, Django Channels.
- База данных: SQLite (по умолчанию), PostgreSQL (поддерживается).
- Кеширование: Redis, Memcached.
- Инструменты: Django ORM, Django Admin, сериализаторы.
- API и асинхронность: Django REST Framework, Channels, ASGI.
- Frontend: Django Templates, HTML/CSS, JavaScript (для drag’n’drop, WebSocket-клиентов).