300 000
Строительство и ремонт
Корпоративный сайт, Порталы и сервисы
Апрель 2026
Разработка с нуля B2B SaaS-платформы для студии коммерческого дизайна интерьеров - полноценного маркетплейса, объединяющего заказчиков и дизайнеров. Платформа должна была автоматизировать весь цикл работы над проектом: от первичной заявки и онбординга специалистов до поэтапной сдачи работ, документооборота и расчётов. Ключевые требования: ролевая модель (клиент / дизайнер / администратор), сложная стейт-машина этапов проекта с системой правок и доплат, интеграция с платёжной системой T-Bank с удержанием средств, электронный документооборот (акты на каждом этапе), AI-помощник для брифа и портфолио, система квалификационного тестирования дизайнеров по 4 уровням с автоматическими email-цепочками. Проект реализовывался в одиночку в роли fullstack-разработчика и DevOps-инженера с нуля до production-готового состояния.
Построил платформу на стеке Next.js 16 (App Router) + React 19, Prisma 7 + PostgreSQL 15, Zitadel OIDC, MinIO/S3, Docker Compose + Nginx, GitLab CI/CD. Платёжный модуль реализован на Rust-сервисе с интеграцией T-Bank Acquiring. Email-рассылка через Resend, AI-функциональность через Claude Haiku (Anthropic).Архитектурно платформа состоит из трёх независимых кабинетов с общим бэкендом: кабинет заказчика, кабинет специалиста и административная панель. Стейт-машина проекта обрабатывает 9 статусов этапа с циклами модерации, правок и доплат. Реализовано 51 API-эндпоинт, 22 модели Prisma, 11 триггеров email-уведомлений.
Проектирование системы: ролевая модель, схема базы данных (22 модели), стейт-машина заказа и этапов проекта. Настройка Docker Compose (5 сервисов), Zitadel OIDC для аутентификации, GitLab CI/CD с автодеплоем на VPS, S3-хранилище на MinIO с presigned URL. Подключение SonarCloud для статического анализа кода.
Многошаговая система верификации дизайнеров: анкета с модерацией администратором, квалификационный тест по 4 уровням сложности (Junior / Senior / Master / Elite) с таймером 30 сек на вопрос и 3 попытками на каждый уровень, Zoom-интервью, изучение регламентов, тест на знание регламентов, подписание договора. На каждом шаге автоматические email-уведомления с уникальным текстом для каждого сценария (пройдено / не пройдено / последняя попытка). Интеграция DaData для автозаполнения реквизитов по ИНН.
Интеграция T-Bank Acquiring: три отдельных платежа по этапам проекта, удержание средств (HELD) до подписания акта, автоматическое освобождение (RELEASED) после подтверждения. Rust-микросервис для обработки webhook T-Bank. Электронный акт выполненных работ на каждом этапе специалист формирует, администратор проверяет, заказчик подписывает. Полный документооборот договора оказания услуг: загрузка PDF администратором → подписание дизайнером → подписание заказчиком → подтверждение администратором → старт работ.
Административная панель с дашбордом (статистика, удержанные средства, очередь задач), управлением специалистами (онбординг, инвайт в Zitadel, архивирование), заказами (модерация, ручная разблокировка этапов), платежами (выплата специалисту, история транзакций). Настройка Nginx с SSL, мониторинг через Slack webhook, rate limiting, версионность сессий с принудительным завершением. Деплой через GitLab CI/CD с автоматическим прогоном тестов и сборкой Docker-образов.
Заявка → Анкета → Проверка менеджером → Выбор дизайнера
→ Предоплата 100% (удерживается)
→ Этап 1: Планировка
→ Менеджер проверяет → Заказчик принимает/отклоняет (до 2 правок)
→ Акт → Выплата за этап
→ Этап 2: Визуализация (аналогично)
→ Этап 3: Документация (аналогично)
→ Финальная доставка файлов