Задание: Веб-программист. Python разработчик | Проект на базе Django и Bootstrap (Дистанционная работа)
Техническое задание для проекта на базе Django и Bootstrap
1. Общее описание
Разработать веб-приложение с использованием фреймворка Django и фреймворка Bootstrap для фронтенда. Приложение должно предоставлять пользователям возможность создавать вебхуки для приема логов, которые затем классифицируются по категориям и отображаются в реальном времени в личном кабинете пользователя в виде таблицы.
2. Функциональные требования
2.1. Регистрация и аутентификация
Регистрация новых пользователей с базовой информацией (имя пользователя, электронная почта, пароль).
Аутентификация пользователей с использованием сессий.
2.2. Личный кабинет
Личный кабинет должен содержать функционал для создания и управления вебхуками.
Возможность создавать новый вебхук с указанием категории, названия и дополнительных параметров.
Просмотр списка созданных вебхуков.
Возможность удаления и редактирования вебхука.
2.3. Вебхуки
Вебхуки должны принимать POST-запросы с JSON-данными, содержащими категорию, название и текстовые данные.
Принятые данные должны сохраняться в базу данных с привязкой к пользователю, который создал вебхук.
2.4. Отображение логов
Логи должны отображаться в личном кабинете в виде таблицы.
Возможность фильтрации логов по категориям и названиям.
Логи должны обновляться в реальном времени без перезагрузки страницы (использование WebSocket или аналогичной технологии).
2.5. Дизайн и верстка
Интерфейс должен быть адаптивным и корректно отображаться на различных устройствах.
Использование Bootstrap для стилизации элементов интерфейса.
3. Нетехнические требования
3.1. Безопасность
Использование HTTPS для защиты данных, передаваемых между клиентом и сервером.
Хранение паролей в зашифрованном виде.
3.2. Производительность
Оптимизация базы данных для обработки большого количества записей.
Эффективное управление ресурсами сервера для поддержки высокой доступности и скорости работы приложения.
4. Технологии
Backend: Django
Frontend: HTML, CSS, JavaScript (с использованием Bootstrap)
База данных: PostgreSQL
Асинхронное взаимодействие: WebSocket для реального времени
Безопасность: использование Django security features, SSL/TLS
5. Этапы разработки
Планирование и проектирование архитектуры приложения.
Разработка функциональности аутентификации и регистрации пользователей.
Реализация функционала управления вебхуками.
Реализация механизма приема и обработки данных от вебхуков.
Разработка пользовательского интерфейса для отображения логов.
Тестирование и оптимизация приложения.
Деплой и настройка серверного окружения.
6. Тестирование
Разработка тестов для проверки функциональ