← Все кейсы

Клиентский ребилд · e-commerce

karaokeshop.kz

karaokeshop.airg-inggger.workers.dev ↗

Старый магазин на Wix → единая витрина с B2B-воронкой на дизайн-системе. Контент, структура и код собраны заново.

Детали проекта

Роль
Одна: стратегия, семантика, IA, дизайн, сборка
Формат
Клиентский ребилд
Рынок
Казахстан · B2C + B2B
Статус
Живой прод (домен ждёт привязки)

До / после

Единая витрина с сегментацией по намерению плюс выделенная B2B-воронка «под ключ». Отклонённая альтернатива: два отдельных сайта для B2C и B2B; она дала бы чистое разделение, но удвоила бы контент и распылила ссылочный вес домена.

До: мобильная главная karaokeshop.kz на Wix
До, мобильная версия: старая главная на Wix.
После: мобильная главная нового karaokeshop с квизом подбора
После, мобильная версия: квиз подбора первым экраном.
Старая главная karaokeshop.kz на Wix: стоковое фото и общие слова
До: старая главная на Wix, скриншот июня. Сайт до сих пор живёт на домене.
Новая главная karaokeshop: вход по сценариям, единая дизайн-система
После: новая главная. Вход по сценариям, дизайн-система на токенах.

Что было плохо

Старый сайт предлагал «профессиональные решения», но не давал входа по сценарию покупателя.

На старой главной: стоковое фото и общие слова. Пункты «Для дома» и «Для заведений» в меню есть, но за ними нет посадочных под конкретные запросы. Покупатель домашней системы и владелец бара, оснащающий заведение под ключ, попадают на один и тот же прайс.

Анализ семантики показал: у четырёх прямых конкурентов нет блога и слабый контент, а кластеры запросов «для дома», «для заведения», «под ключ» и гео-запросы свободны. Стратегия ребилда: занять их посадочными и статьями раньше конкурентов.

Цифры продаж и цитата собственника магазина появятся после интервью с ним. Пока кейс опирается только на то, что проверяемо по репозиторию и живым сайтам.

Проектирование

«Правлю цвет в одном месте, ничего не меняется»

Все цвета живут в единственном theme.css пакета токенов, исходник токенов остался только про радиусы, из глобальных стилей ушло 96 строк цветовых правил.

Полный разбор

Процесс

Сгенерированный файл токенов дублировал глобальные стили, и глобальные молча перебивали. Симптом: цвет исправлен, на сайте ничего не изменилось; тёмная тема правилась бесконечно.

Гипотеза

Единственный источник правды: два источника одного типа данных неизбежно расходятся, и это архитектурная ошибка, а не вопрос дисциплины.

Чем заплатила

Появилось жёсткое правило «цвет только в theme.css», которое держится дисциплиной команды, а не механикой.

Мобайл в тёмной теме.

Проектирование

WhatsApp-кнопку на карточках добавила я, и я же её убрала

С карточек кнопка убрана (цена видна, ссылка «Подробнее»), конверсионное действие живёт на странице товара, на мобильном добавлен закреплённый бар с ценой и кнопкой.

Полный разбор

Процесс

Кнопка «Написать в WhatsApp» стояла на каждой карточке каталога: прятала цену, перехватывала клик по карточке и дублировала страницу товара.

Гипотеза

Разделение ролей: карточка это навигация, конверсия происходит на странице товара. Смешение ролей размывает оба действия.

Чем заплатила

До конверсионного действия стало на один клик дальше: из каталога больше нельзя написать продавцу мгновенно.

Тестирование

Решение «убрать рассрочку» разошлось с кодом на 21 вхождение

Полный поиск по репозиторию и зачистка одним проходом. Сейчас упоминаний в коде ноль.

Полный разбор

Процесс

Владелец магазина решил убрать упоминания Kaspi-рассрочки. Аудит спустя время нашёл около 21 вхождения: в конфиге сайта, на главной, в калькуляторе, в мете и статьях блога.

Гипотеза

Контент и код это единый источник правды: после продуктового решения нужен полный аудит вхождений, а не точечная правка по памяти.

Чем заплатила

Стратегия рекомендовала рассрочку как канал конверсии, решение владельца перевесило: вместе с текстами ушла и часть конверсионной механики.

Остальные решения

Выдуманные рейтинги убраны из разметки до жалоб

было: В структурированную разметку страниц попали рейтинг и число отзывов, которых не существует: соцдоказательство сгенерировалось раньше, чем появились настоящие отзывы.

Lighthouse из гейта в сигнал

было: SEO-проверка Lighthouse стояла в CI как ошибка и красила пайплайн даже при рабочей сборке. Красный CI без реальной причины создавал ложное «деплой сломан».

Передача сайта собственнице: кабинет вместо правки кода

было: Весь контент жил в TypeScript-файле на ~880 строк, и собственница (не разработчик) правила его прямо на GitHub с риском «удалил кавычку и сломал сайт».

AI-теллы вычищены из текста: 370 длинных тире в блоге плюс пустой маркетинг-слоп

было: Копия несла следы машинной генерации: длинное тире «—» по всей видимой прозе (только в блоге 370 вхождений в 26 статьях) и пустые обещания вроде «идеального баланса цены и качества» и «индивидуального подхода».

Переключатель темы

было: Тёмная тема только по системной настройке

Ошибки и артефакты: для тех, кто глубже
Главные ошибки и что они дали
·

Решение приняли, код разошёлся. Упоминания рассрочки остались в 21 месте после решения её убрать. После каждого продуктового решения нужен полный поиск по репозиторию, а не правка по памяти.

·

Компонент подменял тему вместо следования ей. Декоративный компонент форсировал тёмную палитру и создавал тёмный остров в светлом шелле. Удалён полностью: страницы следуют теме сайта.

·

Фейковый рейтинг дошёл до продакшен-разметки. Соцдоказательство сгенерировалось раньше настоящих отзывов. Проверять сгенерированный контент на выдумки до деплоя, а не после.

Результат

4 кластера

Семантическое ядро: дом, заведение, под ключ, гео. Принцип: один кластер намерения, одна посадочная, один URL.

69 страниц

В sitemap живого прода: каталог, сценарные и гео-посадочные, статьи, сравнения, калькулятор комплекта.

52 теста

Юнит-тесты на калькулятор, квиз, SEO-мету и целостность контента: контент вынесен в JSON и проверен на 0 расхождений с исходником.

Целевая метрика: позиции и переходы по сценарным кластерам («для дома», «для бара», «под ключ») после привязки боевого домена. Замера нет и пока быть не может, и я не изобретаю цифры: пока домен karaokeshop.kz отдаёт старый сайт, у нового прода нет поискового трафика, который можно честно измерить.

  • Ограничение: боевой домен не привязан, прод живёт на техническом адресе. Этот долг записан в репозитории проекта.
  • Контент живёт версионированными JSON в репозитории; кабинет /admin для собственницы развёрнут, облачная CMS сознательно отклонена ради нулевого бюджета и отсутствия вендор-лока.
  • Ограничение: бизнес-цифры магазина появятся после интервью с собственником.

Что бы сделала иначе

Привязала бы боевой домен раньше: без него SEO-стратегия, ради которой строился проект, не начинает работать, а канонические ссылки указывают на старый сайт.

И проверяла бы сгенерированный контент на выдумки до деплоя: фейковый рейтинг в разметке нашёлся только аудитом.

Как я работала с Claude

Claude ускорял производство контента и аудит вхождений; стратегия и гейты качества были мои.

Как я работала с Claude 26 статей семантического ядра

Ускорил

26 статей под семантическое ядро и 69 страниц прода, плюс аудиторская рутина вроде зачистки 21 вхождения рассрочки одним проходом. Производство и аудит контента вела в паре с Claude.

Позволил

Одна закрыла весь ребилд: семантика, IA, дизайн-система на токенах, код и 52 теста на контент и SEO-мету.

Осталось за мной

Стратегия и гейты мои: единая витрина вместо двух сайтов, конверсия на странице товара, а не на карточке, Lighthouse из гейта в сигнал.

Где ошибся и как поймала: Сгенерированный контент вписал в schema.org рейтинги несуществующих отзывов; нашла аудитом, вычистила из разметки и скрыла соцдоказательство до появления реальных отзывов.