MyUnion Pro — Платформа управления профсоюзами на базе ИИ
MyUnion Pro — полнофункциональное веб-приложение для управления профсоюзами с чат-ботами на базе ИИ, автоматической генерацией документов, отслеживанием обращений и функциями вовлечения членов. Построено на Next.js 16, TypeScript и PostgreSQL, оптимизирует операции профсоюза, онбординг членов и обработку документов.

Обзор проекта
MyUnion Pro — это полнофункциональное веб-приложение для управления профсоюзом с чат-ботами на базе искусственного интеллекта, автоматическим созданием документов, отслеживанием апелляций и функциями взаимодействия с членами. Созданный на основе Next.js 16, TypeScript и PostgreSQL, он оптимизирует операции объединения, регистрацию участников и обработку документов.
- Живое приложение: myunion.pro
- Версия: 1.6.1
Основные технологии и стек
Фронтэнд:
- Next.js 16.0.7 (маршрутизатор приложений, Turbopack)
- React 19.2.0 с серверными/клиентскими компонентами
- Типскрипт 5
- Tailwind CSS 4 с темным режимом
- Форма React Hook + проверка Zod
- Редактор форматированного текста TinyMCE
Бэкэнд:
- Маршруты API Next.js (RESTful)
- Призма ОРМ 6.19.0
- База данных PostgreSQL
- NextAuth.js 4.24.13 (несколько поставщиков аутентификации)
- BullMQ (очередь заданий)
- Кукольник (генерация PDF)
- ИИ и интеграции:
- API OpenRouter AI (LLM)
- Векторные вложения (база знаний RAG)
- DaData API (проверка организации)
- Best Advantage API (партнерские скидки)
- Облачные сообщения Firebase (push-уведомления)
- API Telegram-бота
- Яндекс OAuth
Инфраструктура:
- Менеджер процессов PM2
- Обратный прокси Nginx
- SSH-туннелирование для безопасного доступа к БД.
- Файловое хранилище VDS
Ключевые функции и модули
Чат-система на базе искусственного интеллекта
- Двухрежимные чат-боты: бот для заявлений и бот для апелляций.
- RAG: документы разбиваются на части, внедряются и извлекаются.
- База знаний: поддержка PDF, DOCX, XLSX, CSV, TXT.
- Конвейер автоматической обработки: извлечение → фрагментирование → внедрение → хранение.
- История чата, переименование, экспорт
- Теги быстрых вопросов для распространенных обращений
- Создание чата по умолчанию при регистрации пользователя.
Техническая реализация:
- Поиск векторного сходства
- Асинхронная обработка документов (BullMQ)
- Потоковая передача ответов
- Реакции на сообщения и вложения
Система создания документов
- Генерация на основе шаблонов с помощью редактора WYSIWYG.
- Автоматическое создание PDF-файлов с помощью Puppeteer.
- Несколько типов документов: заявления о членстве, формы взносов и т. д.
- Динамическая подмена переменных из профилей пользователей
- Загрузка подписанного документа
- Интеграция с Google Диском
- Пакетная регенерация
Документооборот:
- Сбор данных профиля через чат AI.
- Проверка обязательных полей
- Выбор шаблона и рендеринг
- Генерация PDF с помощью Puppeteer
- Хранение и загрузка
Управление профилями пользователей
- Профиль с более чем 50 полями
- Интеграция DaData для валидации организации (ЕГРЮЛ/Минюст РФ)
- Автозаполнение адреса
- Загрузка аватара с обрезкой
- Награды, образование, управление профессиями (на основе JSON)
- Отслеживание завершения профиля с индикаторами прогресса
- Восстановление профиля из базы знаний
Улучшения пользовательского интерфейса:
- Скрытые формы (разборные)
- Редактируемые/удаляемые карты
- Мобильный адаптивный дизайн
- Проверка в реальном времени
Система управления апелляциями
- Генерация 8-значного публичного идентификатора с обнаружением столкновений
- Типы апелляций: Юридические, Бухгалтерские, Технические, Прочие
- Интеграция боковой панели с быстрым доступом
- Отслеживание статуса: Черновик, Отправлено, В процессе, Решено.
- Аналитика с извлечением ключевых слов
- Теги быстрых действий
- Режим чата апелляции с контекстом
Проверка в реальном времени
- Лента сообщений: создание, лайки, комментарии, просмотры
- Новости: статьи с опросами и комментариями.
- Профили пользователей: общедоступные страницы с сообщениями.
- Подписки: следите за пользователями
- Компактные мини-карточки для каналов приборной панели
- Загрузка изображений с оптимизацией
- Предварительный просмотр ссылок
- Встраивание видео (YouTube)
Интеграция скидок и преимуществ
- Интеграция API с лучшими преимуществами
- Фильтрация по городам с автоматическим определением
- Пользовательские настройки: push-уведомления, фильтры.
- Поддержка геолокации
- Отслеживание активации скидок
- Синхронизация с партнерской системой
Аутентификация и безопасность
- Несколько методов аутентификации:
- Электронная почта/пароль
- SMS-ОТП (2FA)
- Телеграмма OAuth
- Яндекс OAuth
- Волшебная ссылка
- Ролевой контроль доступа (6 ролей)
- Управление сеансами
- Объединение аккаунтов
- Отслеживание истории номеров телефонов
- Проверка электронной почты
Панель администратора
- Управление пользователями с олицетворением
- Конфигурация AI-бота
- Управление базой знаний.
- Редактор шаблонов документов (WYSIWYG)
- Управление новостями
- Управление иерархией организации.
- Системные журналы и аналитика
- Управление переменными среды
- Мониторинг состояния очереди
Push-уведомления
- Интеграция Firebase Cloud Messaging
- Поддержка OneSignal (устаревшая версия)
- Кнопки действий в уведомлениях
- Умное управление подписками
- Неблокирующая реализация
Мобильная оптимизация
- Адаптивный дизайн (мобильный)
- Мобильный заголовок с навигацией
- Сенсорное взаимодействие
- Оптимизирована загрузка изображений
- Мобильная система меню
- Адаптивные макеты
Архитектура базы данных
20+ моделей Prisma:
- Пользователь (с ролями, статусом членства)
- Организация (иерархическая структура)
- ЧатСессия, ЧатСообщение
- Документ, Шаблон документа
- UserAppeal, AppealAnalytics
- База знаний, Документ знаний, Часть знаний
- UserPost, Новости, Комментарий
- Скидка, скидкапредпочтение
- Push-подписка
- И еще
Особенности:
- Иерархические организации (ППО → Региональные → Федеральные)
- Поля JSON для гибких данных (награды, образование и т. д.)
- Мягкое удаление
- Комплексная индексация
- Каскадное удаление, где это необходимо.
Оптимизация производительности
- Серверные компоненты для начальной загрузки
- Оптимизация изображения с помощью Sharp
- Ленивая загрузка и разделение кода.
- Кэширование Redis (BullMQ)
- Асинхронная обработка документов
- Эффективные запросы к базе данных с помощью Prisma
- Генерация статических страниц (126 маршрутов)
- Оптимизация чанка для производственных сборок.
Развертывание производства
Инфраструктура:
- Ubuntu VDS (194.87.49.210)
- Менеджер процессов PM2
- Обратный прокси Nginx
- SSH-туннель для безопасного доступа к базе данных
- Скрипты автоматического развертывания.
- Мониторинг и протоколирование ошибок
- Процесс развертывания:
- Развертывание на основе Git
- Чистый процесс сборки
- Призматические миграции
- Проверка здоровья
- Перезапуск с нулевым временем простоя
Недавние улучшения (сегодняшняя сессия)
Исправления производственных ошибок:
- Исправлены отсутствующие фрагменты JavaScript (500 ошибок).
- Реализован чистый процесс восстановления.
- Исправлены ошибки MODULE_NOT_FOUND.
- Проверено, что все 68 файлов фрагментов сгенерированы правильно.
- Улучшения пользовательского интерфейса/UX:
- Компактные почтовые/новостные карточки для приборной панели
- Улучшена мобильная отзывчивость.
- Скрытые шаблоны форм для наград/образования/профессий
- Исправлены ошибки гидратации и проблемы с FOUC.
Улучшения чата:
- Исправлена сортировка сообщений (от самых старых к самым новым)
- Решены дублирующиеся ключевые предупреждения.
- Улучшено отображение реакции на сообщение.
- Улучшена обработка вложений.
Рабочий процесс разработки
— TypeScript для безопасности типов.
- Prisma для управления базами данных
- Конфигурация на основе среды
- Полная документация (более 40 файлов MD)
- Руководства и процедуры тестирования.
- Скрипты миграции
- Настройка локальной разработки с туннелированием SSH.
Ключевые показатели
- Всего маршрутов: 126+ (динамические + статические)
- Конечные точки API: 100+
- Компоненты: 50+
- Модели баз данных: 20+
- Строки кода: 15 000+
- Файлы документации: 40+
Продемонстрированные навыки
Фронтенд-разработка:
- React 19 с серверными компонентами
- Архитектура маршрутизатора приложений Next.js
- Адаптивный UI/UX дизайн.
- Государственное управление
- Обработка и проверка форм.
- Функции в реальном времени
- Бэкэнд-разработка:
- Дизайн RESTful API
- Проектирование схемы базы данных.
- Аутентификация/авторизация
- Обработка и хранение файлов.
- Очереди заданий и асинхронная обработка
- Интеграция сторонних API
- ИИ и машинное обучение:
- реализация RAG
- Векторные вложения
- Интеграция LLM (OpenRouter)
- Управление контекстом
- Системы баз знаний
DevOps и инфраструктура:
- Развертывание производства
- Управление процессами (PM2)
- Конфигурация обратного прокси
- SSH-туннелирование
- Администрирование базы данных
- Мониторинг ошибок
Решение проблем:
- Отладка производства
- Оптимизация производительности
- Исправлены ошибки гидратации.
- Оптимизация процесса сборки
- Кроссбраузерная совместимость
Основные моменты проекта
- Комплексная разработка от концепции до производства.
- Сложный набор функций, охватывающий несколько доменов.
- Готовность к работе с реальными пользователями.
- Масштабируемая архитектура для будущего роста
- Комплексная документация
- Современный технологический стек с лучшими практиками
- Адаптивный дизайн, ориентированный на мобильные устройства
- Интеграция ИИ с RAG
- Этот проект демонстрирует способность создать и развернуть готовую к использованию платформу SaaS с современными веб-технологиями, интеграцией искусственного интеллекта и сложной бизнес-логикой.