К содержанию
Работа

Kitchen Visualizer — white-label-конструктор кухонь для интернет-магазинов

Встраиваемый конструктор кухни: покупатель выбирает сцену и профиль фасада, красит верхние шкафы, нижние и остров по отдельности, добавляет glaze и молдинги, сравнивает варианты и уходит с готовой конфигурацией в каталог магазина. Это не проект под один магазин — ядро одно, а сцены, палитры, правила совместимости и финальный CTA настраиваются под каждого merchant. Фотореализм достигается не 3D-рендером, а послойной композицией в Canvas поверх настоящей фотографии интерьера.

Главный экран проекта Нажмите, чтобы рассмотреть
Kitchen Visualizer — white-label-конструктор кухонь для интернет-магазинов 01 / 07
Kitchen Visualizer — white-label-конструктор кухонь для интернет-магазинов — Главный экран проекта
Клиент
Интернет-магазин
Индустрия
Электронная коммерция
Срок
10 месяцев
Команда
8 человек

Задача

Swatch размером с ноготь и фотография одной дверцы не отвечают на вопрос, который останавливает покупку: как это будет выглядеть на моей кухне и как сочетаются верх, низ и остров. Решение откладывается, а менеджерам приходится вручную собирать референсы и объяснять разницу между коллекциями.

Магазину нужен был модуль, который показывает его собственный ассортимент в реалистичной сцене, даёт менять отдельные конструктивные зоны, скрывает сочетания, которых нет в производственном каталоге, сохраняет конфигурацию и связывает картинку с товарами, образцами или заявкой — и при этом встраивается без переезда магазина на новую платформу. К этому добавлялось требование, которое меняет всю архитектуру: то же самое ядро должно повторно использоваться другим магазином с другим брендом, другими сценами, другой палитрой и другим финалом воронки.

Решение

Послойная сцена вместо 3D. Кухня собирается в Canvas из подготовленных слоёв: базовое фото помещения, прозрачные маски верхних шкафов, маски нижних, остров и торцевые панели, детали дверцы и рамки, crown и light rail molding, glaze и finish overlays, дополнительные элементы сцены, watermark магазина. Цвет или текстура применяется только к своей маске, поэтому свет, тени и перспектива исходной фотографии сохраняются. Пользователь получает мгновенный photorealistic preview без тяжёлого рендера на сервере и ожидания. Порядок слоёв, прозрачность, blend mode и совместимость элементов настраиваются для каждой сцены отдельно.

Профиль фасада — не картинка, а ключ. Выбор профиля на первом шаге связан с коллекцией магазина и определяет доступные цвета, glaze, молдинги и последующий product mapping. Палитра не является общей статической библиотекой: магазин задаёт, какие цвета доступны конкретному профилю и товарной серии, а правила совместимости не дают собрать комбинацию, которой нет в торговом или производственном каталоге.

Независимые зоны. Верхние шкафы, нижние, остров, боковые и торцевые панели, crown molding, light rail molding, декоративные элементы. Для каждой зоны — текущий цвет, быстрые swatches и переход к полной палитре с фильтрацией по коллекции, бренду краски, названию или группе, заданной магазином. Цвет молдинга можно связать со шкафами или задать отдельно, панели острова следуют его конфигурации.

История хранит состояние, а не картинку. Пошаговый undo и redo, сброс отдельной зоны, сброс всех цветов и деталей, возврат к предыдущему шагу без потери остальных настроек, несколько сохранённых вариантов, копирование, переименование, before/after и сравнение двух комбинаций. Ссылка на вариант открывает набор идентификаторов сцены, профиля, зон, цветов и элементов, а не тяжёлое изображение в URL. Скачивается при этом уже готовый Canvas-render с watermark магазина.

Каждая визуальная опция связана с товаром. Категория и product family, профиль и door style, цвет и finish, коллекция панелей и молдингов, sample product, атрибут для quote, payload для корзины или design request. Финал определяет merchant: открыть отфильтрованную коллекцию, добавить образцы, передать параметры в запрос коммерческого предложения, сохранить конфигурацию в аккаунт покупателя, приложить рендер к заявке дизайнеру или вернуть host-странице структурированный объект через integration API.

White-label без форка ядра. Для каждого магазина настраиваются логотип, цвета и типографика, домены и allowed embed origins, тексты и локализация, набор сцен и превью, профили фасадов и product mappings, палитры и цветовые группы, отделки и glaze, декоративные элементы, правила совместимости, CTA, watermark и analytics identifiers. Продукт обновляется централизованно, но внутри каждой витрины выглядит родным.

Merchant admin и версия конфигурации. Загрузка базовых сцен, управление масками и порядком слоёв, зоны и интерактивные области, библиотека профилей, текстуры, цвета и метаданные отделки, catalog mapping, предпросмотр и валидация. Перед публикацией проверяются размеры слоёв, обязательные зоны, битые ассеты и отсутствующие product mappings. Конфигурация версионируется и откатывается — неудачное обновление одного магазина не останавливает общий сервис.

Встраивание и доверие к данным. Подключение через iframe или JavaScript embed, postMessage или JS API, callbacks изменения шага и конфигурации, передача product filters и cart payload, deeplink к сохранённому варианту, theme tokens, согласованное управление высотой iframe, переходы на host routes без привязки к конкретной CMS. Обязательны allowed origins и CORS, а клиентский payload не считается доверенным источником цены и доступности: product mapping и CTA проверяются на сервере магазина.

Результат

Покупатель видит свой выбор в настоящей кухонной сцене, настраивает зоны по отдельности, не натыкается на несуществующие сочетания и уходит из конструктора не с картинкой, а с конфигурацией, привязанной к товарам магазина. Магазин подключает модуль к существующей витрине вместо переезда на новую платформу; ассортимент, палитры и сценарий завершения остаются его собственными. Ассеты и конфигурации загружаются отдельно от host-страницы, поэтому сцены и палитры обновляются без релиза витрины. Аналитика собирает воронку целиком: открытие визуализатора, выбор сцены и профиля, смену цвета зоны, отделку и декоративные слои, сохранение варианта, сравнение, скачивание, share, запрос образцов, клик по CTA и завершённую передачу конфигурации в магазин. А компания получила один продукт вместо серии похожих заказов: подключение нового магазина — это конфигурация, ассеты и mapping, а не отдельная ветка кода.

10 месяцев длительность проекта
8 человек команда
9 шагов пользовательский сценарий от выбора сцены до передачи в магазин
3 зоны независимая настройка верхних шкафов, нижних и острова
Состав проекта

Что вошло в решение

Решения и компетенции, которые использовали в проекте. По ссылкам — подробный состав каждого направления.

Ещё

Похожие проекты

Всё портфолио
Artik — интернет-магазин печати на заказ с онлайн-конструктором
Работа OneCore Media

Artik — интернет-магазин печати на заказ с онлайн-конструктором

Artik — канадская платформа заказа одежды, спортивной формы и промопродукции с индивидуальным нанесением. У обычного магазина цена привязана к SKU; здесь она собирается из тиража, цвета основы, размерной сетки, числа зон печати и количества красок в каждой из них. Поэтому магазин соединён с онлайн-конструктором макетов и производственным контуром типографии в один сквозной путь — от выбора футболки до задания в цех.

Интернет-магазин
MagentoPHPMySQL
CanMedDirect — интернет-магазин медицинских расходных материалов
Работа OneCore Media

CanMedDirect — интернет-магазин медицинских расходных материалов

CanMedDirect — канадский интернет-магазин медицинских расходных материалов для домашнего ухода, длительной терапии и восстановления после процедур. Внешне это обычный интернет-магазин, но покупатель здесь ищет не «повязку», а конкретный артикул производителя нужного диаметра, в нужной упаковке и совместимый с уже используемой системой. Магазин строился вокруг этой точности: каталог, поиск, совместимость, страховые документы и direct billing.

Интернет-магазин
PHPMagentoMySQL
Forpost — B2B-платформа оптовой торговли с Click2Buy и POS для торговых представителей
Работа OneCore Media

Forpost — B2B-платформа оптовой торговли с Click2Buy и POS для торговых представителей

Единый цифровой контур канадского оптового дистрибьютора товаров для дома и сада. Публичный сайт знакомит с брендом и ассортиментом, Click2Buy обслуживает самостоятельный B2B-заказ, POS работает в руках торгового представителя в шоуруме и на выставке. Три канала стоят на одних SKU, ценах, остатках, клиентах и заказах, поэтому продажа сейлза не превращается в отдельную ручную таблицу.

Интернет-магазинКорпоративные порталы
MagentoPHP
Первый разговор — бесплатно

Расскажите, что хотите изменить

За одну встречу уточним задачу и предложим следующий шаг, даже если вам нужен другой подрядчик.

Что будет на встрече
  1. 01 Опишите задачу своими словами
  2. 02 Уточним цель и ограничения
  3. 03 Предложим решение и следующий шаг
длительность 45–60 мин