- BrainTools - https://www.braintools.ru -
На связи Антон Черный, лид команды продуктового дизайна. Расскажу, как рядовая задача заставила нас пересобрать UX‑процесс и ускорить проверку гипотез с помощью AI‑first прототипирования.
До недавнего времени Figma была основным инструментом, с помощью которого мы создавали и тестировали прототипы наших продуктов. Когда решили переделывать UI конструктора email‑рассылок, мы поняли, что разработка затянется и отнимет много ресурсов. В интерфейсах такого типа слишком много состояний и сценариев, поэтому проверка гипотез превращается в бесконечный цикл «нарисовали — показали клиентам — переделали».
Мы попробовали AI‑first прототипирование: собрали рабочий прототип в Lovable и начали дорабатывать его промптами между UX‑тестами. В итоге ускорили проверку гипотез в два раза и перестроили UX‑процесс.
Статья будет полезна продуктовым дизайнерам и командам, которые делают сложные интерфейсы и хотят быстрее тестировать UX.
Mindbox — платформа автоматизации маркетинга, которая помогает маркетологам собирать данные о клиентах, сегментировать аудиторию и запускать персонализированные коммуникации в разных каналах. Один из наших ключевых инструментов — конструктор email‑рассылок, в котором маркетологи собирают письма и готовят их к отправке.
Раньше в конструкторе email‑писем можно было использовать только готовые HTML‑блоки, которые Mindbox создавал отдельно под требования каждого клиента. При создании шаблонов клиенты не могли быстро обновлять дизайн писем: поменять структуру блоков или изменить стили элементов. Например, если есть этаж с текстом слева, а иллюстрацией справа, поменять их местами было невозможно — только выбирать другой шаблонный этаж.
Можно было только вписать свой текст, изменить его стиль, вставить картинки. Для всего остального прибегали к HTML‑верстке. Из‑за этого онбординг клиентов Mindbox растягивался. Маркетологи медленно запускали кампании, например они начинали готовить рассылки о скидках за 2–3 месяца до «черной пятницы».
Конструктор email‑рассылок решили переделать так, чтобы он был удобным и понятным для клиентов‑маркетологов. И чтобы при этом не нужно было каждый раз верстать HTML‑блоки отдельно для каждого клиента.
До недавнего времени цикл разработки дизайна в нашей компании выглядел так:
Мы заранее продумывали сценарии пользовательского интерфейса.
Рисовали в Figma кликабельные линейные прототипы сценариев.
На звонках показывали прототипы клиентам. Предлагали им решить свою задачу, наблюдали за их действиями: как и в какой последовательности клиент взаимодействует с элементами интерфейса, понятно ли ему вообще, что происходит на экране.
Собирали обратную связь и вносили изменения. Например, меняли текст на кнопке или перемещали ее на более очевидное место.
При необходимости цикл повторяли. В конце собирали чистовой прототип с комментариями и отправляли разработчикам.
Это классический процесс, но он может быть трудозатратным, если в интерфейсе много состояний и пользовательских действий. Например, визард с минимальным количеством шагов и кнопками «Назад», «Далее», «Отменить», «Применить» — это простой интерфейс, который не требует больших ресурсов на разработку.
А в конструкторе письма действий много: добавлять блоки, выбирать их тип, перетаскивать и вкладывать блоки друг в друга, делить строку на колонки, редактировать текст, применять к нему разные стили и загружать изображения. Это сложный интерфейс — чтобы его разработать, нужно проверить больше 20 гипотез вместе с клиентом. Для каждой приходится запускать весь цикл заново: отрисовывать экраны, прописывать сценарии «от клика к клику», тестировать с клиентами. Проверка всех гипотез может занимать до 1,5 месяцев.
Дополнительная сложность в том, что пользовательский сценарий невозможно полностью продумать заранее: на тестировании появляются новые шаги, ответвления и контексты, которые забыли или не смогли заложить в прототип. Например, при создании экранов с отчетами невозможно подставить в прототип реальные цифры или названия продуктов из клиентского проекта. Значит, клиент не сможет делать в прототипе все, что он делает в реальном продукте, даже если мы отрисуем в Figma сотни различных состояний интерфейса нового конструктора.
Верстка писем отличается от верстки страниц для браузера. Для сайтов можно использовать CSS, flex, анимацию, позиционирование. В письмах же работают другие правила: ограниченный набор тэгов, табличные структуры, inline‑стили, никаких внешних CSS. Любое отклонение — и письмо криво отобразится в почтовом клиенте. Из‑за этого мы ввели ограничение для нового конструктора: шаблон письма должен легко транслироваться в HTML‑таблицу, пригодную для отправки по email. А значит, список элементов, из которых он может состоять, должен быть минимальным и уж точно не должен повторять [1] все пространство имен HTML.
При этом нам было важно дать клиентам больше гибкости в создании писем. Чтобы они могли произвольно добавлять и удалять блоки, управлять вложенностью этих блоков, интерактивно менять их размеры, стиль текста или изображение фона. И делать это все в интуитивно понятном интерфейсе.
Для начала мы проанализировали структуру шаблонов из email‑рассылок и выделили набор базовых элементов, с помощью которых можно построить любое письмо: блок, строка, колонка, контент. Этим набором решили ограничиться, чтобы не раздувать число сущностей в конструкторе. Блок, строка и колонка — это контейнеры. Они занимают конкретное место в структуре шаблона. Письмо состоит из блоков, блоки — из строк, строки — из колонок. Колонки могут содержать только контент — основные визуальные элементы письма, к которым относятся текст, кнопка, изображение и разделитель.
Благодаря такой структуре клиенты могли бы создавать достаточно сложные письма и менять их дизайн самостоятельно. А для нас упрощалась задача сериализации в HTML‑таблицу, идеальный контейнер для HTML‑писем.
Учитывая, что AI сейчас повсюду, а рисовать в Figma сотни состояний — так себе план, мы решили собрать интерактивный прототип в Lovable. Это AI‑сервис, который по описанию создает работающий веб‑интерфейс, чтобы быстро прогонять UX‑сценарии без разработки.
Поначалу общались с Lovable как с понимающим человеческий язык специалистом — короткими промптами со скриншотами интерфейса. Из этого ничего не получилось: без объяснения бизнес‑задачи нейросеть не понимала, что ей нужно делать. Например, мы загрузили в Lovable скриншот чернового макета и попросили сделать прототип конструктора «как на картинке». В ответ нейросеть сгенерировала визуально похожий лендинг — совсем не то, что нужно. Каждая следующая попытка исправить ситуацию все дальше уводила результат от желаемого и стоила дополнительных токенов.
Мы решили поменять стратегию и обратились к ChatGPT. Объяснили ему голосом бизнес‑задачу, а он сгенерировал готовый промпт для Lovable.
Создай интерактивный веб-интерфейс конструктора email писем.
Цель — реализовать базовый функционал, максимально близкий к полноценному email-редактору: есть канва с письмом, слева тулбар с элементами, справа панель настроек элемента (drawer), поддерживается drag-and-drop, выделение элементов, выделение места вставки, перетаскивание элементов между колонками и внутри колонки.
Ниже — точные требования.
⸻
1. Общая структура интерфейса
Интерфейс состоит из трех областей:
1. Левый тулбар (вертикальная панель ~80px ширины)
2. Центральная канва с письмом
3. Правый drawer (панель настроек элемента) — появляется только при выборе/добавлении элемента
⸻
2. Канва с письмом
По центру страницы размести «письмо» — это белый контейнер шириной 600px.
• Стартовая высота письма: 600px
• Фон всего редактора: светло-серый (#F5F5F5)
• Письмо расширяется вниз, когда добавляются элементы.
Оно должно вести себя как лендинг — растягиваться по высоте под контент.
Структура письма жёстко фиксирована.
• Между колонками: 20px
• Блок, строка и колонки не редактируются (нельзя добавлять/удалять)
• Пользователь работает только с добавлением элементов внутрь колонок
⸻
3. Плейсхолдеры колонок
Каждая колонка начинается с большого плейсхолдера:
• Высота: 200px
• Светло-серый фон (#EDEDED)
• В центре текст: «Добавьте элемент сюда» (серым)
• Если в колонку добавлен хотя бы один элемент → плейсхолдер исчезает.
⸻
4. Тулбар слева
Вертикальный список элементов, расположенный сверху вниз.
Каждый элемент — квадратная плитка 1×1 с простой иконкой (без подписи).
Список элементов:
1. Текст
2. Изображение
3. Кнопка
4. Разделитель
5. Видео
Поведение [2]:
• Все элементы перетаскиваются drag-and-drop на канву.
• При наведении на плитку показывать cursor: grab
• Элемент перетаскивается зажав левую кнопку мыши.
⸻
5. Добавление элементов в колонку
Добавление происходит только drag-and-drop.
Во время перетаскивания:
• Когда курсор над колонкой → показывать зелёную вставочную линию (как в Notion/Figma)
• Вставочная линия должна появляться между элементами, если она есть
• Вставка возможна:
• в начало колонки
• между элементами
• в конец колонки
После отпускания мыши:
• Элемент вставляется в выбранное место
• Плейсхолдер исчезает
• Элемент автоматически выделяется
• Правый drawer автоматически открывается
⸻
6. Типы элементов и их дефолтные заглушки
Текст
• Заглушка: две строки “Lorem ipsum dolor sit amet”
• Ширина 100%
• Нормальный фон (прозрачный)
Изображение
• Серый квадрат 200×150
• Текст «Изображение» по центру
Кнопка
• Чёрная кнопка шириной auto, высотой 40px
• Текст: «Кнопка»
Разделитель
• Тонкая горизонтальная линия (1px, #D0D0D0)
Видео
• Серый прямоугольник (200×150)
• Значок “play” по центру
⸻
7. Выделение элементов
При выборе элемента:
1. Вокруг всего элемента появляется зелёный outline (2px, #37B24D)
2. Над верхней границей, прижатый к outline, отображается зелёный шильдик с названием элемента (Например: “Текст”, “Картинка”)
3. Открывается drawer справа
Если drawer закрыть вручную, повторный клик по элементу открывает его снова.
⸻
8. Расположение и перемещение элементов
Элемент можно перетаскивать:
• вверх/вниз внутри своей колонки
• в другую колонку
• в конкретную позицию между элементами
Вставочная линия должна всегда визуализировать точное место вставки.
⸻
9. Drawer элементов (панель настройки справа)
Drawer должен открываться автоматически:
• после добавления элемента
• при клике на элемент
В drawer должны быть:
Настройки для текста
• Редактирование контента (textarea)
• Жирный / курсив / подчёркнутый
• Размер шрифта
• Цвет текста
• Выравнивание (влево / центр / вправо)
• Отступ сверху / снизу
Настройки для изображения
• URL изображения
• Ширина (в % или px)
• Скругление
• Alt-текст
• Выравнивание
Настройки для кнопки
• Текст кнопки
• URL ссылки
• Цвет фона
• Цвет текста
• Радиус скругления
• Padding
Настройки для разделителя
• Толщина линии
• Цвет
Настройки для видео
• URL (YouTube embed или mp4)
• Постер (опционально)
Общие требования
• Drawer должен иметь крестик закрытия
• Пока drawer закрыт, визуально ничего не блокируется
⸻
10. Удаление элемента
Каждый элемент должен иметь:
• кнопку удаления в drawer
и
• крестик при наведении внутри элемента (в правом верхнем углу)
Если последний элемент удалён → плейсхолдер колонки возвращается.
⸻
11. Мини-анимации (если возможно)
• Лёгкая анимация появления вставочной линии
• Плавное появление зелёного outline
• Мягкая анимация открытия drawer
⸻
12. Результат
В итоге должен получиться рабочий прототип конструктора писем, где:
• есть две фиксированные колонки
• можно добавлять элементы
• можно перетаскивать элементы
• есть плейсхолдеры
• есть drawer настроек
• есть выделение элементов
Сплит пока НЕ нужен — он будет добавлен во втором цикле.
И вот уже это первый промт для лавбл, который гарантирует 80% результата
Промпт, написанный нейросетью, сработал. После нескольких уточняющих запросов Lovable сгенерировал интерактивный прототип, который почти не отличался от настоящего продукта.
Мы сразу же запустили тест с участием 15 клиентов. Отправляли маркетологам ссылку на прототип, созванивались и просили их собрать такое же письмо, какое они собирали в старом конструкторе. И клиенты с ходу справлялись. Они могли добавлять в письмо блоки, текст, картинки, кнопки и менять структуру. А некоторые даже не понимали, что используют не настоящий продукт, а прототип. Для них это был просто «новый конструктор», свежая версия привычного инструмента.
Иногда прямо на звонке дизайнер мог внести изменения в прототип уточняющим промптом, чтобы маркетолог сразу же протестировал новую версию. Таким образом за полчаса мы могли добавить в будущий интерфейс новые элементы или убрать ненужные.
Например, на первом тесте пользователи путались и не могли попасть на нужный уровень вложенности. Пытаясь ловить элемент через ховеры, они могли выбрать не то, что хотели. Мы сразу это заметили и с помощью одного промпта добавили в прототип «хлебные крошки» для навигации между уровнями. На следующем UX‑тесте маркетологи уже активно ими пользовались и перестали теряться в структуре.
За неделю мы провели около 20 UX‑тестов и каждый раз вносили изменения через уточняющие промпты в Lovable. Таким образом, мы стали создавать прототипы для проверки гипотез в среднем в 2 раза быстрее.
Эксперимент с Lovable показал, что рабочие прототипы можно собирать и дорабатывать в 2 раза быстрее, чем раньше.
Теперь AI‑first прототипирование стало базовым способом проверять UX‑гипотезы во всех продуктах Mindbox. Сейчас цикл разработки продуктового дизайна выглядит так:
Обсуждаем задачу и накидываем черновое решение «на салфетке».
Создаем рабочие прототипы интерфейса в Lovable.
Предлагаем клиентам воспользоваться ими и собираем обратную связь.
Вносим изменения уточняющими промптами и тестируем снова.
В итоге собираем в Figma чистовой прототип с комментариями для разработчиков.
Кроме того, мы получили неожиданный бонус — новую роль клиента в процессе. В Figma‑прототипах мы показывали срежиссированный нами сценарий. Из‑за этого всегда был риск отправить в разработку не самый лучший вариант прототипа, который не учитывает всех возможных действий клиента.
AI‑first подход помог увидеть реальное взаимодействие с продуктом. Как будто клиент работает с опубликованной версией на проде. Качество обратной связи выросло, а у нас появилась 100% уверенность, что в разработку отправляется прототип, который учитывает потребности [3] клиента.
Автор: anton_chernyy
Источник [4]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/27758
URLs in this post:
[1] повторять: http://www.braintools.ru/article/4012
[2] Поведение: http://www.braintools.ru/article/9372
[3] потребности: http://www.braintools.ru/article/9534
[4] Источник: https://habr.com/ru/companies/mindbox/articles/1011150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1011150
Нажмите здесь для печати.