О проекте
Квалификационная работа
Тема: Создание онлайн-системы управления личными задачами и напоминаниями с использованием микрофреймворка Flask
Данный проект представляет собой полнофункциональную веб-систему для управления личными задачами и напоминаниями, разработанную с использованием микрофреймворка Flask для Python.
Автор проекта
Функционал системы
Управление задачами
Создание, редактирование, удаление и отслеживание задач со статусами и приоритетами.
Категории
Организация задач по цветным категориям для удобной навигации.
Приоритеты
Четыре уровня приоритета с визуальной индикацией: низкий, средний, высокий, критический.
Напоминания
Браузерные и всплывающие уведомления о наступивших напоминаниях со счётчиком в меню.
Повторяющиеся задачи
Ежедневные, еженедельные и ежемесячные задачи с автосозданием следующего экземпляра.
Статистика и графики
Диаграммы распределения задач по статусам, приоритетам и категориям.
Профиль пользователя
Управление профилем, сменой пароля и просмотр персональной статистики.
Админ-панель
Управление пользователями и общая статистика системы для администраторов.
Светлая и тёмная тема
Адаптивный современный интерфейс с переключением темы и анимациями.
Используемые технологии
- Backend: Flask 3 (микрофреймворк Python), фабрика приложения, Blueprints
- База данных: SQLite3 + SQLAlchemy ORM
- Аутентификация: Flask-Login
- Формы и безопасность: Flask-WTF, WTForms, CSRF-защита, Werkzeug
- Frontend: HTML5, CSS3 (кастомный дизайн, без фреймворков), ванильный JavaScript
- Уведомления: Web Notifications API + AJAX-опрос
- Графики: Chart.js
Особенности реализации
- Модульная архитектура с использованием Blueprints
- Система ролей (пользователь / администратор)
- Защита маршрутов и проверка прав доступа
- Защита от open redirect и CSRF, секреты в .env
- AJAX-действия без перезагрузки страницы
- Оптимизированные SQL-запросы (агрегации, без N+1)
- Адаптивный дизайн для всех устройств