Умный кросс-промо в каталоге продуктов Novol
Машиночитаемый каталог задаёт порядок промо для каждого приложения, единые флаги платформ и единые логотипы — iOS, Android и веб показывают релевантные продукты портфеля.
Novol обновил версионированный каталог продуктов на /catalog/v1/products.json — в нём появилась более гибкая модель кросс-промо. Мобильные приложения и сайт компании читают один JSON-источник, поэтому маркетинговая логика не дублируется в каждом репозитории.
У каждого продукта в поле platforms теперь указаны web, iOS и Android. Промо-полоски фильтруют по доступным ссылкам на целевой платформе, а не по одному тегу — FlowPix на iOS может показать VStok в вебе и Novol VPN в App Store без пропусков.
Новые поля каталога: crossPromoOrder для ранжирования от источника, crossPromoSources для точечных настроек (например showAllProducts) и crossPromoShowAllProducts как глобальный дефолт. У FlowPix, VStok, Threads Track и Novol VPN — свои последовательности промо с учётом реального пересечения аудиторий.
URL логотипов приведены к единому виду в каталоге и скрипте VStok — иконки одинаково отображаются в компактных карточках, RSS и in-app промо.
Метаданные VStok в каталоге расширены: полные локализованные описания, FAQ и ссылки на платформы до публичного запуска — в одном ключе с AI-discovery файлами и страницами продуктов.
Smoke-тесты проверяют наличие cross-promo данных, доступность Novol VPN и VStok по платформам и целостность каталога после деплоя — регрессии отлавливаются до production-клиентов.
Для интеграторов эталоном остаются TypeScript-хелперы в lib/catalog.ts и lib/catalog-platform.ts — фильтрация промотируемых продуктов и UTM-редиректы.
Актуальный каталог: novol.dev/catalog/v1/products.json, портфолио: novol.dev/products.