Бэкенд для публичного веб-приложения с модерацией текстовых сообщений
Техническое задание (ТЗ)
Желаемый срок выполнения - 24 часа (СРОЧНО!)
Бэкенд для публичного веб-приложения с модерацией текстовых сообщений
1. Общая информация
Необходимо разработать бэкенд для веб-приложения, которое работает в одном экземпляре, размещенном в публичном пространстве (экран / терминал / установка).
Клиентское приложение отправляет короткие текстовые сообщения (аналог SMS), которые проходят модерацию и после одобрения отображаются на экране.
Бэкенд устанавливается на отдельный ПК и работает:
в локальной сети вместе с клиентским приложением;
или с доступом через интернет (опционально).
2. Архитектурные и технологические требования
2.1 Общие требования
Технологии должны быть распространены и легко поддерживаемы.
Запрещено использование экзотических или узкоспециализированных фреймворков, которые усложняют передачу проекта другому разработчику.
Решение должно быть понятным стороннему разработчику без длительного онбординга.
2.2 Деплой и поддержка
Обязательно:
возможность быстрого развертывания системы;
возможность простого обновления.
Допустимые и желательные варианты:
хранение кода в GitHub;
деплой через Docker / Docker Compose;
минимальное количество ручных шагов при обновлении.
Бэкенд должен запускаться:
на обычном ПК (Windows / Linux);
без зависимости от специфической серверной инфраструктуры.
3. Роли и доступы
3.1 Клиентское приложение
Доступ:
отправка сообщений;
получение списка одобренных сообщений;
получение системного статуса.
Авторизация:
не обязательна или реализуется через простой механизм (API-key, токен).
3.2 Админка (модерация)
Единственная роль — модератор.
Реализация админки — на выбор разработчика:
отдельная веб-админка;
готовая админ-панель;
или другой стандартный подход.
❗ Наличие отдельного публичного API для админки не является обязательным.
Главное требование — функциональность и простота поддержки.
Функции модератора:
просмотр всех сообщений;
изменение статуса сообщения;
редактирование текста перед одобрением;
управление системным состоянием приложения.
4. Данные и модель сообщения
4.1 Сообщение (Message)
Поле Тип Описание
id string / UUID / int Уникальный идентификатор
original_text string Оригинальный текст от клиента
approved_text string | null Текст после модерации
status enum pending / approved / rejected
created_at datetime Дата и время получения
reviewed_at datetime | null Дата модерации
ai_checked boolean Прошел ли проверку ИИ
ai_result string | null Комментарий или результат проверки ИИ
5. Системное состояние
5.1 SystemState
Поле Тип Описание
is_blocked boolean Заблокирован ли экран
system_message string Системное сообщение
updated_at datetime Дата последнего изменения
6. API для клиентского приложения (обязательно)
6.1 Отправка сообщения
POST /api/messages
{
"text": "Короткое текстовое сообщение"
}
{
"success": true,
"message_id": "12345"
}
6.2 Получение одобренных сообщений
GET /api/messages/approved
{
"messages": [
{
"id": "123",
"text": "Одобренный или отредактированный текст",
"created_at": "2026-01-08T10:15:00Z"
}
]
}
Возвращаются исключительно сообщения со статусом approved.
6.3 Получение системного статуса
GET /api/system/status
{
"is_blocked": true,
"system_message": "Временно недоступно"
}
7. Автоматическая проверка сообщений через ИИ (опционально)
Автоматическая проверка текстов через OpenAI API.
Результат проверки сохраняется и доступен модератору.
ИИ не принимает окончательного решения, лишь помогает модерации.
8. Ограничения и защита
Ограничение длины сообщения (рекомендуется до 160–240 символов).
Базовая защита от спама (rate-limit).
Валидация входных данных.
9. Ожидаемый результат (MVP)
Работающий бэкенд с минимальным API для клиента.
Простая админка с одной ролью.
Быстрое развертывание на ПК.
Возможность легко передать поддержку другому разработчику.
Готовность к работе как в локальной сети, так и через интернет.
Отзыв заказчика о сотрудничестве с Oleksandr V.
Бэкенд для публичного веб-приложения с модерацией текстовых сообщенийЗдравствуйте и спасибо за выполнение Проекта, все было выполнено хорошо!
Отзыв фрилансера о сотрудничестве с Олексієм Шликовим
Бэкенд для публичного веб-приложения с модерацией текстовых сообщенийХороший заказчик, всегда с пониманием отвечает, хорошая коммуникация.
Актуальные фриланс-проекты в категории Веб-программирование
Разработка автоматической отправки формыНеобходимо разработать программу для автономной отправки формы в министерство. Задача следующая: 1. Перейти на сайт заполнения формы https://sites.google.com/view/medresilience/form 2. Отправить в форму код университета Откроется следующая форма, там ничего менять не нужно,… Веб-программирование ∙ 16 минут назад ∙ 14 ставок |
Необходимо заменить изображение на сайте на WordPressИщем программиста, который заменит изображения складов на сайте в калькуляторе https://sun-box.com.ua/calculator/. Будем работать над проектом параллельно с дизайнером картинок. Ставим изображения на сайт, если не нравится, то дизайнер исправляет и заменяем на сайте. Всего 31… CMS, Веб-программирование ∙ 18 минут назад ∙ 32 ставки |
Вывести посты из Инстаграма на сайт (опенкарт)
700 UAH
Здравствуйте. Нужно настроить функционал, чтобы на сайте (OpenCart) отображался блок с постами Instagram. Отзовитесь, кто делал и знает как ) Спасибо ) По стоимости договоримся, не знаю, сколько это стоит. HTML и CSS верстка, Веб-программирование ∙ 2 часа 51 минута назад ∙ 30 ставок |
Разработка сайта для интернет-магазина.Интересует разработка сайта для интернет-магазина. Нужна система: интернет-магазин (до 2000 товаров, в начале меньше), 10–20 SEO-ориентированных лендингов, интеграции с 1С и ИИ-сервисами. CMS, Веб-программирование ∙ 2 часа 53 минуты назад ∙ 56 ставок |
Обновление одностраничного сайта предоставления строительных услуг
1000 UAH
Обновление действующего одностраничного самописного сайта предоставления строительных услуг Задача: -Редизайн сайта -Добавление категорий услуг путем создания мультилендинга на 6 категорий -Добавление к каждой категории фото и описания работ -Оптимизация рекламы сайта… Веб-программирование ∙ 17 часов 30 минут назад ∙ 74 ставки |