SortMaster — это образовательное веб-приложение, предназначенное для интерактивного изучения алгоритмов сортировки и основ алгоритмического мышления. Его основная цель — сделать изучение алгоритмов доступным и увлекательным для школьников, студентов и начинающих программистов.

Функционал платформы включает:

  • Интерактивные симуляторы алгоритмов сортировки с пошаговой анимацией и визуализацией (например, пузырьковая, выбором, вставками).

  • Систему челленджей и мини-игр, где пользователь может соревноваться в скорости и качестве решений.

  • Базу знаний с профессионально оформленными статьями о применении алгоритмов в реальной жизни (например, в соцсетях, играх, рекомендательных системах).

  • Личный кабинет с отслеживанием прогресса, достижениями и статистикой.

Технологии, используемые в проекте:

  • Backend: Python и фреймворк Django, который реализует серверную логику, работу с базой данных (PostgreSQL), аутентификацию пользователей и API для обмена данными с фронтендом.

  • Frontend: HTML5, CSS3 (с использованием Bootstrap для адаптивного дизайна), JavaScript для интерактивных элементов и анимации алгоритмов. Визуализация реализована через кастомные JS-классы без тяжелых фреймворков, что обеспечивает высокую производительность и гибкость.

  • DevOps: Автоматический деплой через Railway (облачная PaaS-платформа), интеграция с GitHub для CI/CD, использование Gunicorn и WhiteNoise для обслуживания приложения и статики в продакшене.

  • Безопасность: CSRF и XSS защита средствами Django, управление переменными окружения через python-decouple, HTTPS по умолчанию.