Сайты управляющих компаний (мультитенантные)
Два сайта тюменских управляющих компаний, перенесенные с DotNetNuke 8 в единую мультитенантную кодовую базу на Next.js с полной миграцией контента
Заменяет два устаревших портала тюменских управляющих компаний на DotNetNuke 8 одним приложением на Next.js 15, которое выбирает тенанта по заголовку Host и отображает каждый сайт в собственной теме.

Заменяет два устаревших портала тюменских управляющих компаний на DotNetNuke 8 одним приложением на Next.js 15, которое выбирает тенанта по заголовку Host и отображает каждый сайт в собственной теме.
Включает админ-панель (страницы, новости, список домов, баннеры, обращения жителей, файлы, пользователи) с редактором TipTap и набор инструментов миграции, который восстанавливает бэкап SQL Server, экспортирует его в JSON, переписывает старые ссылки (включая расшифровку DES-шифрованных файловых тикетов LinkClick в DNN) и идемпотентно загружает все данные с 301-редиректами со старых URL.
Данные для второго этапа (личный кабинет жителя и показания счетчиков) импортированы, но сам этап еще не реализован.
Что умеет
- Мультитенантность по домену: один деплой обслуживает yk72.ru и yk-ezhf.ru с отдельными темами, меню и контентом
- Админ-панель: страницы, новости, дома (карточки домов), блоки/баннеры, входящие обращения, файловый менеджер с API загрузки, настройки, пользователи
- Редактор TipTap с таблицами, изображениями и выравниванием
- Типы страниц: обычная, лента новостей, список домов, форма обращений (БД + e-mail через SMTP), счетчики (этап 2)
- Миграция с DNN 8: восстановление бэкапа SQL Server в Docker, экспорт в JSON, DES-расшифровка ссылок LinkClick с fileticket по GUID портала, отчет о недостающих файлах, идемпотентный импорт
- Редиректы со старых URL (/Список-домов/..., /Portals/33/..., ViewFullNews) на новые слаги
- Сохранены хэши паролей ASP.NET Membership для будущего перехэширования в bcrypt при входе жителей
- Многоэтапная сборка Docker со standalone-выводом Next и постоянным томом /data
Реальная работа для двух действующих компаний; мультитенантный Next.js из одной кодовой базы; нетривиальная миграция легаси, включая реверс-инжиниринг шифрованной схемы файловых тикетов DNN и хэшей ASP.NET Membership; сделано за один день. На «современных» скриншотах показана переработанная главная страница — перед публикацией уточнить, какой дизайн окончательный.
Галерея

Нужно что-то похожее?
Делаю это вживую на звонке в Zoom / Яндекс Телемост, вы смотрите на экран, таймер останавливается по вашему слову. Первые 15 минут бесплатно.