О проекте

Квалификационная работа

Тема: Создание онлайн-системы управления личными задачами и напоминаниями с использованием микрофреймворка 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)
  • Адаптивный дизайн для всех устройств