← Дашборд

Roadmap проекта — июнь → сентябрь 2026

От MVP до передачи клиенту · дедлайн — конец сентября 2026 · путь: аниме → Telegram / TikTok / Shorts → Окно печати → Printology → безопасность → сдача

Сделано
Запланировано
Июнь → 2 июля · сделано
16 июня — веб-морда, гейт-пароль, карточка тренда = боту, фильтры, лимит 100, чистка старых
17 июня — качество AI-выдачи, батчи по 20, чистка каналов, срезы динамики каждые 2 ч
18 июня — кошачий лоадер, вкладка «Всплески», сквозные фильтры, лёгкие спрайты
19 июня — Printology (6 промтов), платные реакции ⭐ Stars, дизайн-система кнопок
21 июня — TikTok-модуль: парсинг Creative Center, обложки, график, страница tiktok.html
24 июня — план роадмапа, 20 вопросов воркшопа, аудит формулы всплеска, дизайн-консистентность
29 июня — слияние веток, переезд на OpenRouter, Printology v2 (редактор + картинки), цены ₽
1 июля — интервью с Алиной, рейтинг по разделам на дашборде
2 июля — YouTube Shorts, «Окно печати», приоритет аниме, МСК-время, категория «Книги», избранное ⭐ и экран сравнения «Выборка»
Июль · динамика и продукт
3–11 июля — график роста тренда во времени в карточке (срезы уже пишутся каждые 2 ч) динамика
14–18 июля — расширить формулу всплеска: репосты + реакции + комментарии, а не только просмотры динамика
21–25 июля — нишевый индекс: «прорыв для своей ниши» рядом со скором (без бустов в самой формуле) продукт
Август · новые источники сигнала
4–8 авг — аудит остальных категорий каналов (игры / кино / шоу-биз / политика / спорт), как для аниме источники
11–15 авг — семантический кросс-платформенный матчинг «Окна печати»: ловить тренд сразу на 2–3 площадках источники
18–22 авг — трендовые звуки TikTok + три рынка TikTok (Запад / РФ / Китай, Запад впереди ~2 недели) источники
25–29 авг — ещё источники: экранизации (Amazon / Netflix), музыка / исполнители, кросс-нишевые всплески источники
Сентябрь · безопасность и передача клиенту
1–5 сент — серверная авторизация вместо клиентского пароля + защита API (rate-limit, авторизация эндпоинтов) безопасность
8–12 сент — аудит секретов + ротация всех ключей (вкл. OpenRouter), проверка истории git на утечки безопасность
15–19 сент — серверная гигиена (SSH по ключам, firewall, порты) + заголовки безопасности (HSTS, CSP) безопасность
22–26 сент — итоговый security-review всего проекта + чек-лист готовности к передаче безопасность
29–30 сент — 🏁 передача проекта клиенту ДЕДЛАЙН

To-Do & Done

Сверху — разбор встречи 3 сентября: что просили и как это предлагается сделать. Ниже — прежний список задач по темам (без фаз). Разложено по датам до конца сентября — на вкладке «Roadmap». Сделанное сюда не дублируем — оно ниже, в дневных отчётах.

Со встречи 3 сентября разобрано по темам, с предложением решения
Ниже — всё, что прозвучало на встрече, разложенное по темам. Под каждым пунктом — что именно просили и как это предлагается сделать. Ниже этого блока идёт прежний список задач, он никуда не делся.
Кто и как пользуется — доступы и статистика
🔑 Сменить пароль ещё раз и посмотреть, кто вернётся
За месяц на сайт заходили с 54 разных адресов, и не все они наши. Питерские коллеги попросили пароль только через две-три недели после прошлой смены, а на вопрос «часто пользуетесь?» ответили, что почти нет — привыкли копировать карточки у конкурентов. Инициативы и обратной связи от них не было. Как предлагаем сделать: сменить пароль и неделю просто смотреть по счётчику, кто остался. Кому доступ действительно нужен — попросит сам, и мы будем знать, кому и зачем он выдан. Заодно закроется вопрос вчерашнего всплеска в 20 визитов из России: сейчас непонятно, кто это был. Сделано 15 сентября: старый общий пароль отключён вместе со всеми прежними сессиями, новые доступы раздаются лично. Наблюдение началось — и теперь возвращение будет видно поимённо, а не по числу заходов с разных адресов.
👤 Отдельная учётка каждому креатору вместо одного общего пароля
Сейчас у всех один пароль на всех, поэтому в статистике видно только «кто-то из Чувашии сидел дольше всех» — а нам нужно понимать, как работает конкретно Алина, конкретно Марик, конкретно Марат. Как предлагаем сделать: сделать вход по личной учётке. Это ложится ровно на ту задачу, которая уже стоит в разделе «Безопасность» — настоящую серверную авторизацию вместо пароля в браузере: делаем один раз и сразу с разделением на людей. Пользователей мало (три-пять), поэтому ничего тяжёлого строить не нужно. Сделано 15 сентября: вход стал по паре логин + пароль. Учётки: общая admin у Павла с Русланом и личные у Алины, Мари и Марика. Открытых паролей в файлах сайта нет — только зашифрованные отпечатки. Доступ отзывается по одному человеку, остальных это не трогает. Список людей — в ACCOUNTS.md, выдача новой учётки занимает минуту через скрипт. Важная оговорка: проверка пока идёт в браузере, то есть это учёт, а не защита, — настоящую серверную авторизацию делаем отдельно.
📊 Видеть, какими функциями человек реально пользуется
Главный вывод встречи: дело не в программе, а в привычке. Креатор тратит на неё примерно 20% времени поиска, а 80% ищет вручную по своим источникам. Чтобы это чинить осмысленно, нужно видеть не «зашёл / не зашёл», а какие разделы открывает, в каком порядке и где бросает. Как предлагаем сделать: повесить метку на каждую значимую кнопку и отправлять событие в Яндекс.Метрику — она уже подключена, отдельный сервер под это не нужен и денег это не стоит. Отдельно включить запись сессий (вебвизор): при трёх-пяти пользователях это позволяет буквально посмотреть, как человек ведёт мышкой и где теряется.
Конкуренты на WB — «что выложили за сегодня»
🆕 Список новых артикулов конкурента за день и за неделю
Самый весомый запрос встречи. Сейчас, чтобы понять, что залил конкурент, нужно заходить в его магазин и листать новинки руками — по каждому магазину отдельно. Хочется одно место, где по конкуренту виден список артикулов, добавленных за сегодня или за неделю, с переключателем периода. WB убрал плашку «new» (и вместе с ней буст новым карточкам), но сам фильтр «новинки» в выдаче остался — он никуда не денется, это база. Как предлагаем сделать: каждый день снимать список товаров продавца и сравнивать со вчерашним снимком — тогда «новое» считается у нас, а не берётся с чужой плашки, и результат не зависит от того, что WB решит убрать в следующий раз. Ходить будем тем же служебным адресом, через который уже работает блок «Что уже есть на WB» — он с нашего сервера отвечает нормально.
🕘 Срез каждый день в 21:00
Обсудили, когда снимать. Частный предприниматель может выкладывать круглосуточно, а компания — в рабочее время, край до 20:00. Значит, вечерний срез застаёт весь день целиком. Как предлагаем сделать: поставить основной скан на 21:00. Если окажется, что нужен ещё и дневной срез — добавим, но сначала посмотрим на вечерний: возможно, его достаточно, и это дешевле по расходам.
🖼️ Картинки новых товаров прямо в списке
Без картинки список артикулов читается тяжело — непонятно, что именно человек выложил. Как предлагаем сделать: подтягивать обложку товара так же, как это уже сделано для конкурентов и Instagram — обложки складываем у себя, чтобы страница не зависела от чужого сервера.
📄 Выгрузка файлом по конкуренту
Просьба звучала конкретно: файл называется по имени предпринимателя, внутри — список новых артикулов за выбранный период. Чтобы можно было переслать, открыть в таблице, отдать менеджеру. Как предлагаем сделать: кнопка «выгрузить» на карточке конкурента, файл-таблица с именем магазина в названии.
🧭 Пересобрать карточку конкурента — но сначала спросить у Алины
Текущая карточка сама же и была названа «разносолом»: непонятно, что в ней главное. Придумывать заново вслепую не хочется — оптика у нас разная. Как предлагаем сделать: попросить Алину описать словами, что она хочет видеть в карточке конкурента слева направо и сверху вниз, и собрать карточку уже по её описанию. До этого ответа карточку не трогаем.
Расшифровка видео — везде, а не только в TikTok
🎬 Транскрипция и перевод для Shorts и Reels
Сейчас расшифровка есть в TikTok — и по видео, и по звукам, с оригинальным текстом и переводом; в корейском разделе переводятся хэштеги. Это оказалось прямо полезно: в TikTok много мусора, и короткая выжимка позволяет пролистать выдачу глазами, не открывая каждый ролик. Прозвучало дословно: «если бы такое было везде — в YouTube Shorts, в Instagram Reels — это было бы прям супер». Как предлагаем сделать: взять тот же механизм, что уже работает в TikTok (снимаем звуковую дорожку → расшифровка → перевод → короткая выжимка), и подключить его к Shorts и Reels. Действие в кадре при этом не описывается — только то, что произносится и написано.
🧠 Описание того, что происходит в кадре — пока только наметить
Отдельно обсуждали разбор самого видеоряда: что в кадре, а не только что сказано. Это упирается в мощности — понадобится своя модель на сервере, потому что роликов много и каждый нужно смотреть. Как предлагаем сделать: не делать сейчас, а зафиксировать как отдельную задачу и вернуться к ней, когда будет понятна цена сервера. Пока закрываем потребность транскрипцией — на встрече согласились, что её уже достаточно, чтобы «быстренько на скорую руку» читать выдачу.
📐 Расшифровки показывать шире
Текст сейчас съедается: видно первые три строки, дальше обрезано, а карточки стоят слишком узко. Как предлагаем сделать: ставить четыре карточки в ряд вместо пяти и увеличить видимую длину текста. Это часть общей работы по интерфейсу — но конкретно здесь мешает уже сейчас, поэтому делаем раньше редизайна.
Музыка и концерты
🎧 Подключить Spotify как источник хитов
Раздел «Музыка» — самый полезный из всех по отзыву Алины: вышла новая песня, стало понятно, что она залетает, дизайнеры сделали принт, принт продался. Работает на сто процентов. Но данные сейчас берутся из Яндекс.Музыки (Apple Music стоит запасным вариантом), а зарубежные хиты в мировом масштабе там видно хуже. Как предлагаем сделать: добавить Spotify третьим источником и сверить, даёт ли он то, чего не видно у Яндекса. Про iTunes отдельно решили, что он не нужен — в России им почти не пользуются.
🎫 Проверить, всех ли концертов хватает из Яндекс.Музыки
Обратный отсчёт до концерта («осталось 8 дней», «113 дней») оказался полезным: под концерты заранее готовят принты и подкручивают рекламу на Ozon, где ставки адекватнее, чем на WB. Вопрос — не теряем ли мы концерты из-за того, что берём афишу из одного места: площадки конкурируют за артистов, и у каждой может быть своё. Как предлагаем сделать: сначала проверить гипотезу на фактах — сравнить афишу Яндекс.Музыки со сторонними билетными площадками по нескольким артистам. Если расхождение заметное — подключаем второй источник, если нет — оставляем как есть и не тратим время.
Фанатские ниши — аниме, игры, книги
🔥 Отдельные разделы по фанатским нишам, как сделано с музыкой
Вывод встречи: фанатская аудитория — самая платёжеспособная и самая предсказуемая, по ней и надо бить. Пример прямо со встречи: после концерта Басты у стадиона продавали вязаные шарфы по полторы тысячи при себестоимости в сто пятьдесят рублей. Музыкальный раздел эту нишу уже обслуживает, а аниме, игры и книги живут общим списком. Как предлагаем сделать: сделать по каждой нише отдельный раздел с той же логикой, что у музыки: что вышло, у кого, насколько залетает, что ждём в ближайшее время.
📚 Книги: их почти не видно, надо чинить
Книги Алина называет отдельно как интересную нишу, но у нас они собираются только из Telegram, и их мало — четыре-пять штук. Причина, скорее всего, в отборе: книжные каналы проигрывают по охватам крупным трендвотчерам, и до топа не доходят. Как предлагаем сделать: два шага. Первый — смягчить отсечку для книг так же, как это уже сделано для аниме (гарантированное место в топе, без подкрутки самой формулы). Второй — поискать книжные источники за пределами Telegram: у книжных сервисов есть открытые рейтинги, надо проверить, что из этого реально доступно.
Карточка тренда
👕 Показывать, есть ли по тренду именно одежда
Блок «Что уже есть на WB» проверили живьём на фильме «Оглянись»: нашлись манга и кружки, а футболок нет — и это как раз сигнал, что нишу стоит занять. Но чтобы это увидеть, пришлось листать список глазами. Как предлагаем сделать: разбивать найденное по типу товара и выносить наверх главное: «одежды нет» или «футболок уже 42». Тогда решение читается с одного взгляда, а не после пролистывания.
Интерфейс
🎨 Критический редизайн — после того, как допилим функционал
Оценка со встречи прямая: накопился визуальный шум, человек, который видит это впервые, растеряется и не станет никуда нажимать. Изначально было одно, потом идеи докручивались на ходу — и вид от этого пострадал. Как предлагаем сделать: порядок не менять: сначала доводим функции, потом делаем редизайн целиком, а не подкрашиваем по кусочкам. В редизайне заодно убрать лишнее и спрятать редкое поглубже. Исключение — расшифровки TikTok, они мешают уже сейчас (см. выше).
🚫 Токсичные темы всё ещё просачиваются
В выдаче попались украинские сюжеты, хотя фильтр на такие темы стоит. Печатать это никто не собирается, а место в отчёте они занимают. Как предлагаем сделать: разобрать конкретные случаи и дополнить фильтр — так же, как это делалось для антивоенных сюжетов.
Процесс и работа с креаторами
🧪 Самим пройти путь от гипотезы до выкладки на WB
Идея прозвучала с обеих сторон: встать на место Алины или Марика и пройти весь путь целиком — от «нашёл тренд» до «выложил карточку и смотрю, стрельнет или нет». Тогда становится понятно, где программа помогает, а где мешает, и появляется свой интерес к результату. Как предлагаем сделать: взять несколько гипотез (обсуждали порядка десяти) и довести их до карточки на WB. Первый живой кандидат уже есть — «Оглянись»: манга и кружки на WB есть, одежды нет.
🗣️ Встреча с креаторами после 21 сентября
Договорились созвониться, когда Никита вернётся. Три цели: посмотреть, как они сейчас работают с программой; понять, как проходят весь путь от поиска до выкладки; показать им функции, о которых они, вероятно, просто не знают. Гипотеза встречи: программой пользуются мало не потому, что она плохая, а потому, что знают её процентов на двадцать. Как предлагаем сделать: провести в том же формате, что и прошлое интервью, и по итогам собрать список доработок — как этот.
📌 Задание креаторам на месяц и обратная связь
От креаторов пока нет ни инициативы, ни идей — за всё время прилетело одно предложение по TikTok, и мы его сделали. Просто попросить «сидите в программе не 20% времени, а 50%» — плохая идея: если человеку неудобно, принуждение это не лечит, а обратная связь получится вымученной. Как предлагаем сделать: дать задачу через результат, а не через часы: за месяц завести столько-то гипотез и карточек, опираясь на программу, и коротко отмечать, где она помогла, а где пришлось идти руками. Заодно это даст материал к сентябрьской встрече.
💬 Дублировать изменения в общий чат
Просьба напрямую: роадмап — это хорошо, но заходить в него каждый раз не получается. Как предлагаем сделать: после каждого обновления коротко писать в общий чат, что появилось, со ссылкой на нужную вкладку. Пишем в общий, а не в личку — чтобы видели все.
Расходы
💰 Посчитать минимальный режим поддержки
Обсуждали, сколько стоит просто «держать свет включённым» — сервер и запросы к моделям — если работы придётся временно притормозить. Ориентир прозвучал в двадцать-тридцать тысяч в месяц, но это оценка на глаз. Как предлагаем сделать: посчитать точно: что можно выключить без потери накопленных данных (тяжёлые парсеры, частые сборы, генерация картинок), что должно продолжать работать, и во что это обходится в месяц. Полезно в любом случае — это же ответ на вопрос, во сколько обходится каждая новая функция.
Безопасность — гейт перед передачей клиенту
Настоящая серверная авторизация вместо клиентского пароля (сейчас пароль виден в исходнике — годится для демо, не для клиента)
Аудит секретов + ротация всех боевых ключей/паролей перед передачей + проверка истории git на утечки
Перевыпустить ключ OpenRouter — светился в чате открытым
Защита API: rate-limit, авторизация на эндпоинтах, никаких чувствительных данных в ответах
Серверная гигиена: SSH только по ключам, firewall, обновления, закрытые лишние порты
Заголовки безопасности (HSTS, CSP и т.п.) — HTTPS/SSL и no-store уже настроены
Итоговый security-review всего проекта + чек-лист готовности к передаче
Источники и каналы
Аудит остальных категорий каналов (игры / кино / шоу-бизнес / политика / спорт) — как уже сделали для аниме
Ещё источники из интервью: экранизации (Amazon / Netflix), музыка/исполнители, кросс-нишевые всплески (тренд всплывает в игрушках раньше, чем в футболках) — книги уже сделали
Конкуренты и маркетплейс
Авто-алерт «конкурент уже печатает этот тренд» на карточке тренда — сверять новые SKU конкурентов с нашими трендами
Соцсети конкурентов: выкопать их TG / IG / TikTok / YouTube по косвенным признакам → следить, что постят
Фид «что залили сегодня» с заголовками карточек (сейчас — точная Δ по числу + примеры; полный дифф упирается в лимит актёра)
Живые досье для остальных 10 конкурентов (ВсеМайки, Print Bar, ТВОЕ…) — найти их seller-id
Правовой флаг у трендов (чужая IP / лицензии) — учиться на арбитражах конкурентов
Динамика и математика тренда
График роста тренда во времени в карточке (срезы TrendSnapshot уже собираются каждые 2 часа)
Расширить формулу всплеска: скорость не только по просмотрам, но и по репостам + реакциям + комментариям
Продукт и UX
Нишевый индекс — метрика «прорыв для своей ниши» рядом со скором (чтобы низкопросмотровые ниши было видно), без бустов в самой формуле
«Окно печати»: семантический кросс-платформенный матчинг — ловить тренд, который есть сразу на 2–3 площадках (сейчас совпадений мало)
Сделано · дневные отчёты ↑ новые сверху
15 сентября · Павел · личные учётки
доступы
общий пароль на всех заменён входом по логину и паролю — у каждого свой · теперь в статистике видно конкретного человека, а не «кто-то из Чувашии» · доступ отзывается по одному, не сбрасывая остальных
👤 Вход по логину и паролю вместо одного общего пароля на всех
Было так: один пароль знали все, и понять, кто именно заходил, было невозможно — а если он утекал, приходилось менять его сразу всем. Стало: на входе два поля, логин и пароль, и работает только целая пара — чужой пароль с другим логином не пустит. Учётки: общая admin у Павла с Русланом и личные у Алины, Мари и Марика. Открытых паролей в файлах сайта больше нет, там только зашифрованные отпечатки, поэтому подсмотреть пароль в исходном коде страницы уже нельзя. Регистр логина не важен, чтобы человек не бился с «Admin» против «admin». Список людей со статусами ведётся в отдельной таблице ACCOUNTS.md, пароли туда намеренно не попадают.
📊 Статистика теперь знает, кто именно смотрит
Главная претензия со встречи 3 сентября: в Метрике видно только «кто-то из Чувашии сидел дольше всех», а нужно понимать, как работает конкретно Алина и конкретно Марик. Причина была не в счётчике, а во входе: пока пароль один на всех, различать людей нечем. Теперь после входа страница сообщает Метрике, кто открыл — и в отчётах появляется конкретный человек. Работает на всех четырнадцати страницах сайта.
🔒 Доступ отзывается по одному человеку, а не сбросом всем
Раньше отключить одного означало сменить пароль всем и заново раздать его оставшимся. Теперь достаточно убрать строку человека — он вылетит при следующем переходе между страницами, остальные даже не заметят. Под это сделан скрипт: одна команда печатает новый пароль и готовую строку для вставки, выдача доступа занимает минуту. Поэтому и отказались от идеи менять пароли каждую неделю: такие ритуалы через месяц перестают выполняться, а точечный отзыв решает ту же задачу и тогда, когда это действительно нужно.
⚠️ Что этот шаг НЕ чинит — записано честно
Проверка пароля пока происходит в браузере, а не на сервере. Это значит: список отпечатков открыт, и пароль теоретически можно подобрать перебором, а платные кнопки генерации картинок по-прежнему может дёрнуть тот, кто знает их адрес. То есть сделан учёт, а не защита. Настоящая серверная авторизация — следующий шаг, она же закроет платные запросы; пока это прямо написано и в ACCOUNTS.md, и в самом файле входа, чтобы никто не считал вопрос закрытым.
🚪 Все прежние сессии закрылись — пароли раздаются заново
Старый общий пароль больше не действует, поэтому у всех, кто был залогинен, доступ закрылся, включая открытые вкладки. Это совпадает с решением со встречи 3 сентября: неделю смотреть, кто вернётся. Только теперь возвращение будет видно поимённо, а не по числу заходов с разных адресов.
11–15 сентября · Руслан · TikTok
предупреждение заранее
разобрались, почему TikTok отваливается каждые три дня · Telegram теперь предупреждает за сутки, а не после поломки · проверка живёт на сервере и работает даже при выключенном Маке
🔎 Понятно, почему TikTok отваливается каждые три дня
Пропуск, по которому программа читает TikTok, выдаётся ровно на трое суток в момент настоящего входа — и ночные продления, которые Мак делает сам, этот срок не двигают, только тикают вниз. По записям это видно наглядно: 6 сентября после входа было три дня, 7-го — два с половиной, 8-го — один, 9-го — шесть часов, 10-го — ноль и простой. Раньше это выглядело как «TikTok опять что-то сбросил», а на самом деле это расписание: раз в три дня нужно две минуты живого входа, иначе вкладка встаёт. Заодно выяснилось, что попытка «обновить вход» при ещё живом пропуске ничего не даёт — программа видит, что вход есть, и выходит, не обновив срок. Всё записано в памятку, чтобы в следующий раз не искать заново.
⏳ Telegram предупреждает за сутки, а не после поломки
До этого уведомление приходило постфактум — когда вечерний сбор уже упал. Теперь программа смотрит, сколько пропуску осталось, и если меньше полутора суток — присылает: «ключ истекает такого-то во столько-то, скажи агенту «почини тикток»». Если ключ всё-таки истёк — приходит второе, отдельное сообщение, что вкладка стоит. Уведомление о самом разлогине тоже остаётся как страховка.
🖥️ Проверка переехала на сервер — работает даже при выключенном Маке
Первая версия предупреждения жила только на Маке, и 12–13 сентября это сразу показало слабое место: Мак два дня был выключен, предупреждать было некому, ключ истёк ночью 13-го, и вкладка TikTok простояла до утра 14-го. Теперь ту же проверку раз в шесть часов делает сервер — он работает круглосуточно, у него та же копия ключа и тот же бот. Предупреждение о следующем истечении придёт 16 сентября, сам ключ живёт до утра 17-го.
🔑 Два входа и два догнанных сбора
10 сентября вечером и 14 сентября утром вкладка вставала ровно по описанному расписанию — оба раза вход выполнен заново, ключ передан на сервер, сбор прогнан с нуля (100 хэштегов по России, по 50 по США и Корее, 50 роликов США). 11 сентября вечерний автосбор отработал полностью сам, без участия человека — механизм в порядке, дело только в своевременном входе.
11–12 сентября · Павел · обучение менеджеров
новая страница
появилась страница «Как пользоваться» — инструкция для нового менеджера · главное в ней не описание кнопок, а сама логика работы: несколько ставок вместо угадывания одной темы · заодно нашли и починили поломку обложек TikTok, которую создал сам деплой
🎯 Главное: объяснена сама логика работы, а не набор кнопок
Первая версия инструкции описывала разделы и получилась сухой — человеку, который этим уже занимался, она читалась как реклама. Переписали, начав с честного: заранее не знает никто, ни менеджер, ни программа. Поэтому работа устроена как ставки — набрал кандидатов, быстро отсеял, выложил не одну карточку, а три-пять по разным темам, через две недели посмотрел статистику Wildberries и оставил то, что сыграло. Работает это потому, что одна попытка стоит недорого: макет рисуется за полминуты, карточка заводится за полчаса. Отсюда сразу понятно, зачем программа: не чтобы угадать победителя, а чтобы каждое утро было из чего выбирать и чтобы проверка занимала минуты вместо полудня. Заодно снимается страх «а если не продастся» — неудачная карточка это норма, заложенная в схему, а не провал менеджера.
📘 Страница «Как пользоваться Trend Hunter»
Инструкция для человека, который первый день в этой работе. Порядок работы разложен на шесть шагов — что открыть, как читать карточку темы, как проверить спрос и что уже продаётся на Wildberries, когда жать кнопку макета и почему выкладывать надо несколько карточек. Без единого технического слова, подробности спрятаны под «раскрыть», чтобы объём не пугал. Ссылка появилась в верхнем меню на всех страницах.
🧭 Десять примет, по которым отбирают тему
Знание, которое раньше жило только в голове и передавалось на словах. Первые семь примет отвечают на вопрос «наденет ли человек»: есть ли готовый образ, это высказывание о себе или пересказ чужой новости, есть ли у темы своя аудитория, какая под постом эмоция. Последние три — про деньги и риски: ищут ли тему в поиске, свободно ли место на полке, чисты ли права. У каждой приметы примеры «да / нет» и указание, где именно в программе её проверить. Отдельно оговорено, что это приметы, а не гарантии: тема может пройти все десять и не дать заказов — поэтому и работаем несколькими ставками.
📡 TikTok, Твиттер и Музыка описаны наравне с Телеграмом
Исправлен перекос первой версии, где всё крутилось вокруг Телеграма, хотя на встречах не раз звучало, что другие разделы тоже нужны. По каждому написано, что он добавляет и что лежит в его карточке. TikTok показывает форму темы, а не пересказ, плюс ролики США с расшифровкой речи. Твиттер даёт опережающий сигнал — но записано честно, что задержка в две недели это наша гипотеза, а не проверенное правило. Музыка — раздел, где известна дата в будущем: у концерта есть день и город, а программа сама показывает артистов, которые и в чарте, и едут с туром. Под каждым разделом указано, как часто его открывать, чтобы это не выглядело четырьмя работами вместо одной.
✂️ Убраны самоуверенные формулировки — часть из них была просто неверна
В первой версии было «единственный раздел, откуда можно проверить спрос» и «единственный, откуда можно нажать кнопку принта». Проверили по коду: кнопка макета есть ещё и в «Окне печати», а проверка спроса — ещё и в западном радаре. То есть текст не просто хвастался, а врал. Прошлись по всей странице и вычистили превосходные степени, добавив вместо них оговорки там, где они честны: разборы тем пишет ИИ и бывает мимо, расшифровка речи на шумных роликах ошибается, вердикты в подборке тоже машинные и их стоит перепроверять, выдача маркетплейса зависит от формулировки запроса. Для людей, которые этим уже занимались, такой тон читается как разговор по делу, а не как продажа.
🗒️ Сценарий получасового созвона с администраторами производства
К странице приложен отдельный план встречи: поминутный тайминг на 30 минут, что показывать на экране в каждом блоке, какие фразы произнести дословно и чего не говорить. Отдельно — ответы на вопросы, которые почти наверняка зададут: гарантирует ли программа продажи, кто рисует картинку, можно ли печатать чужие логотипы, почему данные не в реальном времени.
🖼️ Обложки роликов TikTok разъехались с самими роликами — нашли и восстановили
Обнаружилось во время выкладки: обложки видео США собираются на Маке Руслана и лежат только на сервере, а в копии Павла они остались с 4 июля. Обычная отправка файлов на сервер молча заменила сентябрьские картинки июльскими — на вкладке TikTok под сегодняшними роликами показывались чужие кадры. Все пятьдесят обложек вернули на место, скачав их заново прямо из TikTok, и сверили с роликами.
🛡️ Чтобы это не повторилось — правило в инструкции для агентов
Причина поломки была не в программе, а в правилах выкладки: папки с обложками не значились в списке «не трогать при отправке на сервер», хотя собираются они не у нас на компьютере. Список дополнен, рядом объяснено почему — и отдельно записано, что сама программа такую подмену не лечит: если файл с нужным именем уже лежит, она его не перекачивает. Теперь любой агент, который будет выкладывать проект, не наступит на это второй раз.
9 сентября · Руслан · TikTok
сбор восстановлен
хэштеги отстали на двое суток — Мак уснул посреди сбора · срез пересобран и выложен · остальные 14 разделов всё это время шли без сбоев
🌙 Найдена причина: Мак уснул посреди вечернего сбора
Сбор 8 сентября начался в 21:03 и должен был занять минут пятнадцать, но Мак ушёл в сон — программа доработала только в восемь утра. К этому моменту она честно собрала 94 хэштега, но отправить их на сервер не смогла: после пробуждения интернет ещё не поднялся, и все попытки упали с «сеть недоступна». Получилось обидно: данные собрались и остались лежать на Маке, а сайт продолжал показывать позавчерашнее. Это не поломка программы и не проблема с доступом к TikTok — просто неудачное совпадение сна и вечернего расписания.
📊 Срез пересобран заново и выложен на сайт
Не стали отправлять вчерашнее — собрали всё с нуля: 99 хэштегов по России, по 50 по США и Корее, 50 самых просматриваемых роликов США с обложками и распознанной речью. Вкладка TikTok снова показывает сегодняшнее. Заодно прогнали общую проверку: звуки TikTok, YouTube Shorts, Instagram, музыка и концерты, западный радар, печатабельность, конкуренты на WB и прайс калькулятора собирались всё это время без единого пропуска — из пятнадцати разделов отставал только один.
6 сентября · Руслан · TikTok
починка сбора
TikTok разлогинил нашу программу и вкладка три дня показывала старое · доступ восстановлен, свежие тренды снова на сайте
🔑 Восстановлен доступ к TikTok — вкладка ожила
5 сентября TikTok сам сбросил вход, которым программа пользуется для чтения трендов. Обычно она продлевает его молча каждую ночь, но после сброса продлевать стало нечего, и вкладка TikTok три дня показывала подборку от 3 сентября — со стороны это выглядело как «ничего не происходит». Вход выполнен заново вручную, доступ передан на сервер, и программа снова читает TikTok. Свежего доступа хватает примерно на трое суток, дальше он продлевается сам — на всякий случай при сбросе в Telegram приходит уведомление, что нужен ручной вход.
📊 Собран свежий срез: хэштеги трёх стран и видео США
Сразу после восстановления доступа прогнали полный вечерний сбор, не дожидаясь следующего дня: 100 хэштегов по России, по 50 по США и Корее, 50 самых просматриваемых роликов США с обложками и распознанной речью. Всё это уже на сайте. Заодно проверили остальные разделы — звуки TikTok, YouTube Shorts, Instagram, музыка и концерты, западный радар, печатабельность и конкуренты на WB собирались всё это время без перебоев, ничего кроме TikTok не пострадало.
4 сентября · Павел · Узбекистан
новая страница
страница «Шеростан» — план поездки в Ташкент на 14 дней, где под каждым днём объяснено, почему именно так · исследование рынка Узбекистана разобрано критически · готов промт для Deep Research
🗺️ Страница «Шеростан» — план поездки на 14 дней с аргументами под каждым днём
Не расписание «пришёл — ушёл», а объяснение, почему каждый день устроен именно так: почему первая продажа идёт через Telegram и офлайн, а не через Uzum; почему заготовки покупаются малыми партиями, а склад не нужен; почему за один цикл меняется ровно одна переменная; почему решение принимается 27 сентября, а третья неделя — его следствие, а не часть. Плюс критерий GO / ITERATE / STOP, стоп-правила по ходу поездки и список того, чего в эти две недели нет осознанно. Открывается по прямой ссылке sherostan.html за паролем. Рядом лежит расширенный вариант на 21 день — sherostan-21.html.
🔍 Исследование рынка Узбекистана — что в нём правда, а что нельзя брать на веру
Разобраны отчёт Deep Research, бриф и трёхнедельный план. Сильное: гипотеза лага (тренд из рунета приходит в Узбекистан через 1–4 недели — наш радар становится опережающим), Uzum за Cloudflare (решается прокси, как с WB), закон о персданных не требует сервера в стране. Слабое: список из 60 Telegram-каналов не готов к импорту — в нём биржи игровых аккаунтов, каналы ниже порога просмотров и перекос в новости; «потеря 60% спроса» и цена $25–50 — не факты, а прикидки. Найдено, чего нет ни в одном документе: скор узбекских трендов просядет на ~28 баллов из-за отсутствия платформ и Вордстата, агрегатор рассыпает узбекские слова на латинице/кириллице, а массовое вступление в каналы с одной Telethon-сессии может уронить и российский сбор.
📝 Промт для Gemini Deep Research по Узбекистану
Составлен так, чтобы ответ ложился прямо в чек-лист переноса: по каждому узлу нашей системы — узбекский аналог, доступ, цена, риск и вердикт «переносится / нужна замена / дыра». Лежит в docs/research/.
3 сентября · Павел · доступы и план
по итогам встречи
пароль на вход сменён, все прежние сессии сброшены · разбор встречи опубликован отдельным блоком в начале этой вкладки
🔑 Пароль на вход сменён — все прежние сессии сброшены
Решение со встречи: за месяц на сайт заходили с 54 разных адресов, и не все они наши; те, кому доступ выдавался последними, пользуются им почти никак и обратной связи не дают. Пароль сменён — и это не просто новая строка на входе: пропуск, который браузер запоминает после входа, привязан к самому паролю, поэтому у всех, кто был залогинен, доступ закрылся сразу, включая уже открытые вкладки. Заново войти сможет только тот, кому новый пароль передадут лично. Теперь неделю смотрим по счётчику, кто вернулся: это и будет честный ответ, кто программой действительно пользуется. Новый пароль здесь намеренно не пишем — он передаётся в личном сообщении.
🗂️ Всё, что прозвучало на встрече, разложено по темам
Разбор встречи 3 сентября опубликован отдельным блоком в начале этой вкладки — 23 пункта по девяти темам: доступы и статистика использования, новые артикулы конкурентов на WB, расшифровка видео за пределами TikTok, Spotify и афиша концертов, фанатские ниши, тип товара в блоке «что уже есть на WB», редизайн, работа с креаторами и минимальный режим поддержки. По каждому пункту написано не только что просили, но и как это предлагается сделать — чтобы к следующему созвону обсуждать не «что бы хотелось», а конкретные решения. В двух местах предложение расходится с тем, что звучало на встрече, и это отмечено прямо в тексте: задание креаторам лучше ставить через результат, а не через «сидите в программе 50% времени», а новизну карточек на WB надёжнее считать у себя сравнением вчерашнего среза с сегодняшним, а не полагаться на фильтры самого WB — плашку «new» они уже убрали.
3 сентября · Павел · калькулятор
файл 2026
перенесён новый файл расчётов «Калькулятор заказов 2026» · надбавка за размер принта стала ступенчатой · 3D и вытравка подорожали · совпадение с файлом проверено на 88 расчётах
📐 Надбавка за размер принта стала ступенчатой
Раньше она считалась по формуле и росла плавно: два принта почти одинакового размера могли получить 30% и 35% — объяснить клиенту, почему цена разная, было тяжело. Теперь пять понятных ступеней: до 660 см² надбавки нет, дальше 20%, 25%, 30%, 50%, а от 6300 см² — 100%. В деньгах это заметно в двух местах. Средние принты подешевели примерно на 5% (например, 50×60 в три цвета на 200 штук: было 177 ₽ за штуку, стало 168 ₽). А большие 70×90 подорожали сразу на 22% — раньше на этом размере надбавка была 50%, теперь предельные 100% начинаются на 450 см² раньше (стало 252 ₽ вместо 206 ₽ за штуку). В калькуляторе под полем размера теперь прямо написано, в какую ступень попал принт и до какого размера цена не изменится — видно, где она скакнёт.
🧊 Печать 3D подорожала: теперь дороже и матрицы
До этого 3D умножало в 2,5 раза только саму печать. В новом файле появилась отдельная строка «печать 3D за матрицу»: матрицы на таком заказе считаются вдвое дороже. На заказе 30×30 в два цвета на 100 штук цена выросла с 375 до 426 ₽ за штуку, на 40×50 в три цвета на 300 штук — с 293 до 322 ₽. Подсказка в калькуляторе теперь так и говорит: 3D удорожает и печать, и матрицы.
🎨 Вытравка подорожала с +30% до +40%
Надбавка за вид краски на вытравке поднята на десять пунктов. Заказ 30×30 в два цвета на 200 штук: было 115 ₽ за штуку, стало 123 ₽. Напоминаем то, что уже разбирали с технологом и что не является ошибкой: вытравка всё равно может выходить дешевле пластизоля, потому что ей не нужна подложка — это минус одна матрица и в цене за штуку, и в оплате матриц.
🧾 Цена со ставкой НДС 22% считается самостоятельно
Раньше эта строка получалась пересчётом из уже округлённой цены со ставкой 5% — то есть округление делалось один раз и потом растягивалось. Теперь у неё свой расчёт: своё ограничение сверху и своё округление до рубля, ровно как в новом файле. Разница обычно в пределах рубля, но в пограничных заказах цифры перестали расходиться с файлом.
🐞 Опечатку, о которой мы предупреждали 25 августа, в файле исправили
В августовском файле был лишний знак, из-за которого в обычном заказе без 3D цена печати умножалась на ноль — заказ считался втрое дешевле себестоимости. Тогда мы это нашли, в калькуляторе сделали правильно и попросили поправить у себя. В новом файле формула написана верно — то есть калькулятор всё это время считал так, как теперь считает и файл. Заодно закрылся наш давний вопрос про пустую ячейку в ограничении итоговой цены: ссылку на неё из файла убрали, ограничение теперь просто «цена образца» — как и было сделано на сайте.
🔍 Совпадение с файлом проверено на 88 расчётах
Чтобы не сверять цифры на глаз, мы, как и в прошлый раз, пересчитываем настоящие формулы файла программой и сравниваем с калькулятором. Прогнали 88 разных заказов — все ступени размера по обе стороны каждой границы, все краски и ткани, ПАФ и флюру, все тиражи от 1 до 12 000, оплаченный образец, скидки и надбавки, предел в 11 матриц. Сверялось по 15 величинам сразу, всего 1306 чисел: расхождений ноль. Единственное отличие сознательное — там, где файл показывает ошибку «#ЗНАЧ!», калькулятор пишет человеческим языком, что такой заказ напечатать нельзя и почему. Сам прайс печати и цены матриц в этом файле не менялись — общего повышения, как в августе, на этот раз нет.
2 сентября · Руслан
закрыт последний запрос со звонка
в карточке тренда видно, что уже продаётся на Wildberries — с артикулами · список отсеивает товары не по теме · на сам WB заходить не нужно · закрыты все три пожелания встречи 22 июля
🛒 «Что уже есть на WB» — прямо в карточке тренда
Главное пожелание со звонка 22 июля звучало дословно так: «чтобы не заходить на сам Wildberries». Раньше, чтобы понять, забита ниша или свободна, приходилось копировать название тренда, открывать WB и листать выдачу руками. Теперь в карточке рядом с кнопками «Wordstat» и «Google Trends» появилась кнопка «Что уже есть на WB»: она разворачивает список товаров по выбранному ключу — наименование, цена, число отзывов и артикул. Артикул кликабельный: нажал — он в буфере, можно сразу вставлять куда нужно. Сверху стоит главное число — сколько товаров именно по теме: «98 из 100» значит ниша забита, а «по теме — ничего» значит окно печати открыто. Проверять нужно мерч-ключ («тренд + футболка»), такие ключи в карточке подставляются сами: по голому «кошка оскар» Wildberries отдаст кошачьи консервы, а по «кошка оскар футболка» — 42 футболки, то есть реальную нишу. Чтобы на этом не спотыкаться, при выборе голого ключа список сам подсказывает нажать ключ с принтером.
🔓 Препятствие, из-за которого это откладывали, оказалось обходимым
Этот пункт с 22 июля лежал с пометкой «не сделать: WB не пускает наш сервер». Так и было — но мы ходили за товарами тем способом, будто открываем сайт в браузере, а такие визиты с зарубежного сервера Wildberries действительно блокирует. Сегодня проверили другой путь: у WB есть служебный адрес, который отдаёт те же самые товары не картинкой страницы, а данными. С нашего сервера он отвечает спокойно. Проверили и с рабочего компьютера, и прямо на сервере, прежде чем что-то писать. Ни платного прокси, ни доступа к чужому кабинету, ни API-токена продавца для этого не понадобилось.
🎯 Список отсеивает товары не по теме
Первая версия показывала всё, что вернул Wildberries, — и этого оказалось много лишнего: WB ищет по части слов запроса. По тренду «кошка оскар» он выдавал «Футболка с именем Оскар охотник» — к коту это отношения не имеет. Сначала проверили вашу идею фильтровать по продавцам-печатникам: не годится — печатают все подряд, у одного ключа 36 товаров от двадцати разных продавцов, а такой список пришлось бы вести руками, и он прятал бы как раз новых конкурентов. Категория тоже не помогает: почти всё, что находит WB, и так футболки. Поэтому сверяем название товара с самим трендом: считается, сколько слов тренда есть в названии, и отдельно ищется фраза целиком — чтобы «Футболка Чё за лев» засчиталась тренду «чё за лев этот тигр». Латиница и кириллица считаются одним словом: «Лабубу» и «Labubu» — один принт, «брейнрот» и «brainrot» — тоже. Сверху теперь стоит главное число: сколько товаров именно по теме. Остальное не выброшено — лежит под ссылкой «показать частичные совпадения», чтобы мы ничего от вас не прятали.
🔁 Смена ключа больше не оставляет старый список на экране
Поймали на живом примере (тренд «Аниме Вечная воля»). Список строится по тому ключу, который выбран в момент нажатия кнопки. Человек нажимал кнопку с общим ключом «вечная воля», получал список кружек и значков с подписью «показано по названию тренда» — а потом выбирал ключ с принтером, и старый список оставался висеть. Со стороны это выглядело так, будто программа спорит: «я же выбрал футболку». Теперь при смене ключа прежний список сразу убирается, а сама подсказка перестала быть поучением и стала кнопкой: «Показать по “вечная воля футболка”» — одно нажатие, и список пересобирается по нужному ключу. Заодно убрали из текста слово «голый ключ»: теперь пишем по-человечески, что это название тренда целиком и WB отдаёт по нему что угодно.
🙂 Если WB не ответит — будет понятная фраза, а не пустота
Данные Wildberries по своей природе «вчерашние», и сам сервис иногда отвечает не с первого раза. Поэтому список ведёт себя предсказуемо: пока грузится — пишет «Смотрю, что уже есть на WB…»; если не получилось — говорит человеческим языком «WB не ответил, попробуйте через минуту»; если по ключу действительно ничего нет — прямо сообщает, что ниша пустая. Один и тот же запрос десять минут держится наготове и не дёргает WB заново, а слишком частые нажатия мягко притормаживаются — чтобы нас не приняли за робота и не закрыли доступ.
📊 Во вкладке «Встреча 22 июля» появился статус: 3 из 3
Разбор того созвона на сайте заканчивался списком пожеланий — и было непонятно, что из них уже сделано. Добавили наверх блок «Статус на 2 сентября»: по каждому из трёх запросов видно, что именно закрыто и когда, плюс короткий список того, что успели сделать с тех пор (265 Telegram-каналов вместо 146, рост тренда по часам, починенный ночной сбор). Теперь встречу можно начинать не с пересказа по памяти, а с открытой ссылки.
29 августа · Руслан
чистота и безопасность
Код теперь проверяется автоматически · включена постоянная проверка на уязвимости · снято 93 ложные ошибки из 180 · главная дыра в защите пока открыта, о ней ниже
🛡️ Каждое изменение кода теперь проверяется на уязвимости
Проект пишется через ИИ-агентов, и раньше никто не смотрел за ними в четыре глаза: что написали, то и поехало на сервер. Теперь у агента постоянно включён отдельный проверяющий, который читает каждую правку и ищет типовые дыры — зашитые в код пароли и ключи, места, где чужой текст может подставиться в запрос к базе, небезопасные обращения к внешним адресам. Всего около тридцати видов проблем. Ставится один раз и дальше работает само. Важно, что включено это на уровне проекта, а не на одном компьютере, — значит, работает и у Павла тоже, ему достаточно обновиться.
🔎 Агент перестал угадывать и начал видеть настоящие ошибки
До сих пор ИИ-агент, правя код, во многом действовал по памяти: понять, что вот здесь значение может оказаться пустым и всё сломается, он мог только догадкой. Подключили инструмент, который разбирает код по-настоящему — так же, как это делает среда разработки у программиста, — и сообщает агенту реальные ошибки сразу после каждой правки. Проще говоря, агент теперь замечает свою ошибку в тот же момент, а не через неделю, когда бот молча упадёт на сборе.
🧹 Разобрали 180 предупреждений: 93 оказались выдумкой
Первый же запуск проверки выдал 180 ошибок — в таком виде инструмент бесполезен, на него просто перестают смотреть. Разобрались: больше половины были ложными и все по одной причине. Описание таблиц базы данных было сделано в устаревшем стиле, из-за которого проверка считала, что в полях лежат не числа и не тексты, а какие-то служебные объекты, и ругалась на каждое сравнение. Переписали описание в современный вид. Отдельно убедились, что структура самой базы при этом не изменилась ни на букву — сравнили команды создания всех шести таблиц до и после, они совпали точь-в-точь, так что данным на сервере ничего не грозило. Осталось 87 настоящих замечаний, они собраны в одном месте и разбираются отдельно.
📋 Появились правила «так у нас не делают»
В инструкцию для агентов дописали то, чего там не было вообще: чем проект запускается, чем проверяется, и пять коротких правил, нарушать которые нельзя. Например: пароли и ключи живут только в настройках, а не в коде; платную страницу нельзя выкладывать без защиты; ошибку нельзя проглатывать молча, человек должен увидеть понятное объяснение; данные, которые собирает сервер, нельзя затирать со своего компьютера. Раньше каждый агент в начале работы гадал об этом заново и иногда угадывал неправильно.
🧽 Мелкая уборка по всему коду
Заодно прошлись по мелочам, до которых обычно не доходят руки: убрали мёртвые куски, оставшиеся от прошлых версий, нашли и убрали задвоенную страну в списке для музыкального модуля, и — самое полезное — починили логи. Раньше, когда генерация принта падала, в журнал попадала только внешняя обёртка ошибки, а настоящая причина терялась; теперь видно, что именно случилось. Проверка кода после уборки проходит начисто, ноль замечаний — значит, любое новое замечание будет настоящим сигналом, а не шумом.
⚠️
⚠️ Осталось открытым: сайт и деньги защищены только на словах
Честно фиксируем то, что не сделано. Пароль на входе на сайт проверяется прямо в браузере, а не на сервере, — значит, его видно любому, кто откроет исходный код страницы. Хуже того, служебные адреса, через которые страницы получают данные, отвечают вообще без пароля: их можно дёргать напрямую, минуя вход. Среди них есть платные — генерация принтов и картинок идёт за наши деньги. Разобрали варианты. Стандартное решение даёт при входе серое системное окошко вместо нашей страницы и рискует поломать открытие ссылок из Telegram — от него отказались: опыт входа менять нельзя. Договорились на другой путь, при котором внешне не изменится ничего: та же страница, то же поле, тот же пароль, но проверяет его сервер и выдаёт браузеру пропуск. Отложено сознательно, не забыто.
25 августа · Павел · калькулятор
новый прайс
перенесён новый прайс от 26.08 · нашли опечатку, из-за которой обычные заказы считались втрое дешевле · повышение цен уже внутри файла
💵 Новый прайс перенесён в калькулятор
Прислали новый файл расчётов. Перенесли всё: таблица цен за печать переписана целиком (в среднем дороже на 18%), цена матрицы стала зависеть от размера и выросла с 1000–1500 до 1500–3000 рублей, подбор по Pantone подорожал с 1000 до 1500 за цвет, флюра и ПАФ с 20 до 30 процентов, готовые толстовки с 40 до 50. Появилась вторая ступень надбавки за формат: от 3500 см² плюс 50%, от 6750 см² плюс 100%. Печать 3D больше не добавляет три матрицы, а умножает цену печати в 2,5 раза. Вместо строки «счёт без НДС» теперь две ставки прайса — 5% и 22%. Совпадение с новым файлом проверено на 69 расчётах по десяти величинам сразу.
🐞 В новом файле нашлась опечатка, ломающая почти все заказы
В формуле цены за единицу оказался лишний знак, из-за которого при выключенной 3D-печати — то есть в любом обычном заказе — цена печати умножалась на ноль. Проверили пересчётом настоящих формул: заказ 30×20 в один цвет на 100 штук файл считает по 30 рублей вместо 118, в итог попадают только матрицы, а сама печать теряется. Если бы по этому файлу начали считать заказы, их продавали бы втрое дешевле себестоимости. В калькуляторе поведение восстановлено так, как задумывалось: без 3D цена обычная, с 3D — в 2,5 раза выше. Файл стоит поправить и у себя.
📊 Просили поднять цены на 20% — оказалось, они уже подняты
Просьба была увеличить стоимость расчётов на 20%. Перед тем как накидывать наценку, сравнили новый файл со старым на одних и тех же заказах: новый уже даёт на 20–28% дороже. То есть запрошенное повышение заложено в сам файл, и если бы мы сверху включили ещё 20%, цены выросли бы почти в полтора раза от прежних — вероятно, неожиданно для всех. Наценку оставили нулевой, поле для неё в калькуляторе никуда не делось и включается в любой момент.
25 августа · Руслан
починка
Звуки TikTok снова обновляются · четыре дня вкладка показывала данные от 21 августа · причина — закончился платный доступ, поставили новый
🎵 Вкладка «Звуки» ожила — на ней снова сегодняшние тренды
С 21 августа звуки TikTok перестали обновляться: сервис, который отдаёт нам трендовую ленту TikTok, отвечал «оплатите доступ» — на старом ключе закончились кредиты. Бот в этой ситуации повёл себя правильно и не стал затирать вкладку пустотой, поэтому на сайте молча висел срез четырёхдневной давности и выглядел как живой. Руслан прислал новый ключ, прописали его на сервере, перезапустили бота и сразу же прогнали сбор вручную, не дожидаясь утреннего расписания. Собралось 10 звуков по США и 10 по России — с реальным «в скольких роликах используется», просмотрами, правами на коммерческое использование и словами из трека. Запаса на новом ключе — около 25 000 запросов, при нашем расходе примерно 6 запросов в день этого хватит очень надолго.
🛰️ Западный радар X снова отбирает темы, а не вываливает всё подряд
Заодно проверили остальные источники — и нашли вторую тихую поломку, того же рода. На странице «Западный радар» список тем должен проходить через ИИ: он выбрасывает местную политику и биржевые сводки, переводит название на русский и объясняет, почему тема может зайти на футболку. Вместо этого там висел сырой список из Twitter — «Canada», «Sanchez», «Ukraine» без перевода и пояснений. Причина: ответ ИИ обрывался на полуслове, потому что ему выделили слишком мало места на ответ, а разбор такого обрывка падал целиком — терялись даже те темы, которые ИИ успел разобрать. Увеличили лимит и научили систему спасать разобранную часть, если ответ снова оборвётся. Прогнали заново: из 108 сырых тем отобрано 35 — «Челси», «Ливерпуль», «Гарфилд», «Лемми» из Motörhead — с русскими названиями, категориями и пояснениями.
🔔 На будущее: такую поломку стоит замечать раньше
Слабое место видно невооружённым глазом: когда доступ к внешнему сервису заканчивается, сайт не ломается — он просто показывает вчерашние данные, и никто об этом не узнаёт, пока не заметит человек. Здесь между поломкой и починкой прошло четыре дня. Напрашивается пометка прямо на вкладке в духе «данные от такого-то числа, свежих нет» или короткое сообщение в Telegram, когда сбор возвращается пустым. Пока не делали — записали как задачу.
19 августа · Павел · калькулятор
новый инструмент
Excel-калькулятор заказов стал страницей сайта · считает один в один с файлом · показывает себестоимость и маржу · цены меняются без программиста
🧮 Калькулятор шелкографии переехал из Excel на сайт
Менеджеры считали заказы в файле с выпадающими списками, где важные параметры приходилось искать по разным углам таблицы. Теперь это страница сайта: метод нанесения (пластизоль, водная краска, вытравка, золото-силикон) и ПАФ — крупными кнопками в самом верху, размер нанесения с типовыми размерами в один тап, процент заливки отдельной шкалой, а печать «на вылет» — заметным переключателем с подписью «не пропустить». Именно на этих двух вещах менеджер однажды ошиблась в цене. Открывается ссылкой со страницы входа, работает с телефона: цена, итог и маржа всегда видны в полосе внизу, даже когда листаешь параметры.
🔍 Проверили расчёт против самого Excel — 68 сценариев из 68
Главный риск переноса — тихое расхождение в цифрах: интерфейс красивый, а цена не та. Поэтому расчёт сверяли не на глаз. Подняли движок, который считает настоящие формулы Excel, прогнали через него 68 разных заказов (все методы нанесения, все ткани, тиражи от 30 до 20 000, слои ПАФа, плашка, вылет, образцы, доп. услуги) и сравнили с новым калькулятором по шести величинам сразу — итог, цена за штуку, цена со скидкой, версия без НДС, число матриц и цена матрицы. Совпало везде до рубля.
💰 Появились наценка, скидка, себестоимость и маржа
Просили поднять расчёты на 10–30% — сделали это настраиваемым: поля «наценка» и «скидка» стоят прямо в калькуляторе, менеджер ставит их сам, и они запоминаются между расчётами. Рядом сразу видно себестоимость (30% от цены) и маржу — за штуку и со всего тиража, чтобы не считать в голове при разговоре с клиентом. Отдельно показывается, из чего сложилась сумма: печать, матрицы, доп. услуги, Pantone, замены цвета — полоской и списком.
🧵 Ткань и изнанка разделены, цены правятся без программиста
В файле ткань была одним списком, где «футер 2х-нитка» и «изнанка петля» конкурировали за одну надбавку, хотя изделие бывает и тем и другим одновременно. Теперь это два отдельных поля, а как считать надбавку — складывать или брать большую — переключается в настройках, чтобы решить на живых расчётах. Там же, за паролем, правится вся таблица цен: 11 вариантов матриц на 18 ступеней тиража и все коэффициенты. Сохранённые цены видят все, кто откроет калькулятор, а не только тот, кто их поменял.
⚠️ Ошибки теперь видно, а не приходится вспоминать
В исходном файле было правило «ПАФ возможен только на пластизоли», но оно выводилось бледным текстом в стороне и его легко пропускали. Теперь несовместимые сочетания подсвечиваются красным прямо у цены, а если матриц требуется больше, чем позволяет печать, калькулятор честно пишет «напечатать нельзя» вместо непонятной ошибки — в Excel в этом месте появлялось «#ЗНАЧ!». Заодно подсказывается неочевидное: при цветной ткани нужна подложка, поэтому один цвет считается как два — самая частая причина «почему так дорого».
🎨 Калькулятор перестал выглядеть чужой страницей
Павел заметил, что калькулятор не похож на остальной Trend Hunter. Причина оказалась в подходе: страницу собирали по описанию дизайн-системы, но не посмотрели, как устроены живые страницы сайта — а там уже были готовые решения. Главное из них: переключатель светлой темы на сайте существует давно, он общий, сам переключается по закату и запоминает выбор. Калькулятор же завёл собственный, поэтому выбранная на сайте светлая тема в нём не работала. Свою систему убрали, подключили общую. Заодно поставили штатную шапку с логотипом и вкладкой, взяли настоящие светлые цвета сайта (у нас карточки и поля были перепутаны местами), добавили зернистую текстуру, которая есть на всех страницах, и общий набор шрифтов. Теперь калькулятор открывается как часть продукта, а не как отдельный инструмент.
🔒 Калькулятор закрыт отдельным паролем
У калькулятора теперь свой пароль, не совпадающий с общим паролем сайта. Смысл в том, чтобы можно было дать доступ к расчётам менеджерам, не открывая им при этом дашборд трендов и остальные вкладки. Кто уже вошёл на сайт по общему паролю, проходит без второго запроса — у него доступ и так шире. Проверка стоит до отрисовки страницы, поэтому содержимое не мелькает перед экраном входа, а при неверном вводе поле подсвечивается и пишется, что проверить.
🌗 Светлая тема и читаемые подписи
Павел заметил, что подписи переключателей почти не видно. Причина оказалась не в оттенке: у кнопок цвет текста не наследуется от страницы, и браузер рисовал их своим тёмным — для остальных кнопок цвет был задан, для переключателей забыт. Заодно проверили измерением все мелкие подписи: они стояли на служебном сером, который на тёмном фоне даёт контраст 2,4 при норме 4,5 — то есть формально нечитаем. Перевели на более светлый и чуть увеличили. Добавили переключатель светлой темы в шапке: выбор запоминается, по умолчанию тёмная, как остальной сайт. Контраст замерили в обеих темах в четырёх состояниях каждая — провалов нет.
📋 Нашли две недоделки в самом Excel-файле
При разборе выяснилось, что формула итоговой цены ссылается на пустую ячейку — из-за этого заложенное ограничение цены не срабатывало никогда. И что скидка 10% стояла в файле по умолчанию, то есть каждый расчёт молча уходил ниже прайса. В новом калькуляторе скидка по умолчанию нулевая и ставится осознанно; про пустую ячейку ждём от Павла, что там должно было ограничиваться.
19 августа · Павел
сверка
Instagram ожил · нашли, куда утекал бюджет Apify · списки задач снова говорят правду · инструкция для агентов больше не противоречит боту
📸 Instagram не работал, потому что оплата ушла на другой аккаунт
Вкладка Instagram привозила ноль постов, и причина оказалась не технической. Сервис сбора Apify оплатили — но на одном аккаунте, а сервер всё это время продолжал обращаться к другому, бесплатному, где месячный лимит был выбран под ноль ещё в начале августа. Оплаченный аккаунт при этом стоял нетронутым: из 29 долларов не потрачено ни цента. Подставили правильный доступ и прогнали сбор вручную, не дожидаясь ночи — Instagram сразу привёз 40 виральных постов. Досье конкурентов на Wildberries встало по той же причине и оживает тем же ключом.
💰 Досье конкурентов съедало весь бюджет — сократили до раза в сутки
Разобрали, из чего складывался перерасход, по истории всех запусков за месяц. Выяснилось, что дело в одном модуле: сбор досье конкурентов на Wildberries стоит около 61 цента за один заход — это в сорок раз дороже сбора Instagram, который обходится в полтора цента. При двух заходах в сутки он один давал около 36 долларов в месяц и уже сам по себе не влезал в оплаченный тариф на 29 долларов. Показательно: Instagram, на который логично было бы подумать в первую очередь, стоит 46 центов в месяц — отключать его не имело смысла вообще. Оставили один срез конкурентов в сутки вместо двух: расход упал примерно до 19 долларов в месяц, появился запас. Потеряли немного — счётчик новых товаров у конкурентов теперь считается за сутки, а не за полдня, что для решения «печатать или нет» роли не играет.
📋 Список задач отставал от реальности на три работы
Сверили список задач с тем, что реально сделано в коде. Оказалось, два из трёх пожеланий со звонка с Алиной 22 июля давно закрыты, но числились несделанными и с высшим приоритетом: распознавание слов из трека в строчку на принт и доведение Twitter/X до уровня Telegram — фильтры, поиск, избранное, проверка спроса. Из того звонка остался незакрытым только один пункт — список товаров Wildberries прямо в карточке тренда, и у него честно проставлена причина: Wildberries не пускает наш сервер. Также записали августовский результат по каналам: бот читает 262 канала вместо 146, спорт и мемы перестали быть слепыми зонами. Смысл правки простой — когда открываешь список задач, видно настоящее положение дел, а не сделанное вперемешку с несделанным.
🌍 Инструкция для агентов требовала выключить западный отчёт
Нашли расхождение, которое могло тихо откатить работу. В инструкции, которую каждый AI-агент читает перед началом работы, с июня стояло правило: западное направление отключено, не развивать. При этом 10 августа западный отчёт был осознанно включён ради опережающего сигнала — тренд с Запада доходит до России с задержкой в недели. То есть бот делал ровно противоположное тому, что написано в его собственной инструкции. Любой следующий агент мог принять работающий западный отчёт за ошибку и выключить его. Правило переписали под текущее решение, добавили причину и прямое предупреждение не выключать обратно. Заодно поправили пояснения в коде, которые уверяли, что западные тренды до отчёта не доходят — с 10 августа это неправда.
19 августа · Руслан
починка
нашли, почему TikTok не собирался сам · звуки вернулись на сайт · сверили весь конвейер
🔧 Автосбор TikTok не работал неделями — и никто не мог этого увидеть
Хэштеги TikTok регулярно застревали на несколько дней, а причина не находилась: задание автозапуска числится включённым, ошибок нет, лог пустой. Разобрались — задание падало, ещё не начав работу, потому что не могло создать свои файлы логов: они лежали в папке проекта внутри «Документов», куда у системного планировщика macOS доступа нет. Отдельно проверили популярный совет «дать полный доступ к диску» — не помогает, дело было именно в путях логов. Перенесли логи в системную папку, и сбор сразу запустился сам. Вывод неприятный: все последние сборы TikTok были ручными, теперь он снова идёт по расписанию в 20:30 и при каждом включении Мака.
🎵 Звуки TikTok вернулись на сайт
Подставили новый ключ доступа к сервису сбора звуков — подборки собрались: 7 звуков по России и 10 по США, у большинства распознаны слова из трека и есть отметка о разрешённом коммерческом использовании. В российской подборке, например, «All I Want for Christmas Is You» — 16 миллионов роликов. Важно про запас: на ключе осталось 60 обращений, ежедневный сбор тратит около 38 в сутки, то есть примерно через полтора дня понадобится пополнение. Витрина при этом больше не обнулится — покажет последний живой срез с честной датой.
🔍 Сверили весь конвейер — что собирается, а что встало
Прошли по всем источникам разом. Работает: отчёт выходит каждый день без пропусков (100 тем по России, 78–95 по Западу), все 265 Telegram-каналов читаются без ошибок, YouTube, Музыка, Западный радар и Печатабельность обновляются. Музыка отдельно проверена: 100 треков чарта, 92 артиста, 26 концертов — свежие. Не работает Instagram и досье конкурентов на Wildberries: сервис сбора упёрся в исчерпанный лимит бесплатного аккаунта — этим занимается Павел.
14 августа · Руслан
починка
проверили весь сбор · вкладка «Звуки» больше не обнуляется · видео США перестало пропускать сбор через день
🔎 Проверили, что реально собирается — и что встало
Прогнали весь конвейер по логам и базе. Хорошая часть: все 265 Telegram-каналов читаются без единой ошибки, около 4 000 сигналов за прогон, русский отчёт выходит каждый день по 100 тем, западный — по 74–88 тем и уходит подписчикам. Плохая часть: три источника встали не по нашей вине — звуки TikTok, Instagram и конкуренты на Wildberries упёрлись в закончившиеся оплаты сервисов, а хэштеги и видео TikTok — в истёкший ключ доступа.
🎵 Вкладка «Звуки» больше не обнуляется при сбое
Когда сбор падал, он всё равно перезаписывал витрину — было десять звуков, стало ноль, и вкладка выглядела сломанной. Теперь пустой результат не затирает прошлый: звуки остаются на месте с честной подписью «Показаны данные от такого-то числа — свежие пока не приходят». Заодно нашли и убрали побочный эффект: при пустом сборе стирались все обложки треков, то есть даже после починки картинки пришлось бы собирать заново. А если данных нет совсем — теперь вместо пустого экрана понятное объяснение, а не «дождитесь следующего сбора» (следующий пришёл бы таким же пустым).
🎬 Видео США перестало пропускать сбор через день
Нашли замкнутый круг. В июле мы поставили защиту: не запускать резервный сбор, если свежее видео уже привёз Мак. Защита смотрела на дату файла — а когда сбор падал, система возвращала прошлый срез и делала файл «сегодняшним». На следующий день защита принимала это за свежую доставку и пропускала сбор вовсе, потом дата устаревала, попытка повторялась, снова падала — и по кругу. В логах это видно как чередование с 6 по 14 августа. Теперь свежесть определяется по дате внутри самого файла, и подмена больше не проходит. Полностью видео оживёт после обновления ключа TikTok с Мака.
10 августа · Руслан
крупный день
бот читает 265 Telegram-каналов вместо 146 · спорт перестал быть слепой зоной · впервые появились мемы и весь русский рэп · включён западный отчёт
📈 +119 каналов из баз Марата — охват вырос почти вдвое
Разобрали три присланные базы (музыка, спорт, мемы — 230 каналов). Отобрали и подключили 119: каждый проверили вживую — все 119 существуют и совпадают с выгрузкой. Теперь вечерний отчёт строится на 265 каналах вместо 146.
⚽ Спорт: было 3 канала, стало 32
Раньше спорт бот почти не видел. Добавили три слоя: спортивные медиа (Матч ТВ, Спортс, МАТЧ ПРЕМЬЕР), футбольные мем-паблики и официальные каналы клубов — Спартак, ЦСКА, Зенит, Динамо, Краснодар, КХЛ, Авангард, Трактор. Клубы дают немного просмотров, но клубный мерч — отдельный рынок, и сигнал оттуда больше взять негде.
😄 Мемы и юмор — совершенно новая тема, 50 каналов
Такой категории у бота не было вообще, а для печати на футболках это главный источник: именно там рождаются фразы и картинки, которые уходят в мерч. Подключили крупнейшие мем-паблики (Леонардо Дайвинчик, ТОПОР, Двач, ЭТО ЗНАК, КБ), юмор-шоу и комиков, а также каналы с готовыми шаблонами мемов — это фактически заготовки под принт.
🎵 Музыка: впервые сами артисты, а не только медиа о них
Добавили 26 каналов — личные каналы Крида, Коржа, Пошлой Молли, Лазарева, Басты и площадки. Анонсы туров, релизы и коллаборации теперь видны из первых рук, а не через пересказ музыкальных изданий.
🔎 «Английские» списки оказались не английскими — спасли 44 русских канала
Во второй половине дня вернулись к отложенным англоязычным спискам. Проверили не по названию канала, а по тексту реальных постов — и выяснилось, что 44 канала из 136 русскоязычные, просто с латинскими именами. Это весь актуальный русский рэп (Oxxxymiron, KIZARU, Toxi$, 9mice, Lida, MAYOT, Lovv66, Boulevard Depo) и мем-гиганты рунета (MDK, TELEGRA4CH, Yaplakal, 4ch, DeadP47, Benzogram). Если бы поверили названию файла — потеряли бы целый пласт самой «мерчевой» ниши. Один из них, PLOHOY PAREN, показал лучшую вовлечённость во всей базе: 213 тысяч просмотров на пост.
🌍 Включили западный отчёт — опережающий сигнал по трендам
Добавили 14 настоящих западных каналов: Fabrizio Romano (главный в мире инсайдер футбольных трансферов), Sky Sports, Premier League, официальные Манчестер Юнайтед, Арсенал, Челси, Реал Мадрид и англоязычные мем-паблики. Западная ветка бота до сегодня была выключена — теперь включена, и бот строит по ней отдельный отчёт. Смысл: тренд с Запада доходит до России с задержкой в недели, и это фора для запуска мерча. Учтите: каждый вечер добавляется второй проход AI-анализа, это дополнительные расходы — если отчёт не пригодится, выключается одной строкой.
🧹 Отсеяли 111 каналов из 230 — чтобы не засорять отчёт
Из присланных баз взяли ровно половину, и это осознанно. Не взяли: каналы чужих рынков — иранские, узбекские, эфиопские, нигерийские, кенийские, ганские, индонезийские, украинские (часть из них лежала на листе «Русские», но их тренды не про нас); накрученные — например спортивный канал на 897 тысяч подписчиков с 96 просмотрами на пост, или мем-канал на миллион подписчиков с 307 просмотрами; каналы про политику и СВО; откровенный скам с «договорными матчами». Всё отсеянное сохранено отдельным списком — ничего не потеряно, при желании вернём.
📱 PRD-презентация перестала разъезжаться на телефоне
Сверили сервер с GitHub и нашли давнее расхождение: на сервер в июле не доехала мобильная версия презентации. С компьютера всё выглядело нормально, поэтому и не замечали, а с телефона слайды уезжали за край с горизонтальной прокруткой. Долили правильную версию — теперь дека сама ужимается под ширину экрана.
9 августа · Руслан
аналитика
на карточках виден рост тренда по часам · метка «Всплеск» наконец заработала
📈 Видно, как тренд растёт: «+288% за 12 часов» прямо на карточке
Бот и раньше замерял просмотры каждые два часа, но эти замеры никуда не показывались — по карточке нельзя было понять, тема разгоняется или уже выдохлась. Теперь в блоке «Анализ тренда» есть строка «Динамика»: насколько выросли просмотры, за сколько часов, и мини-график роста. Внизу — сколько было при первом замере и сколько при последнем (например, 16:00 · 27K → 04:00 · 105K). Сегодня история есть у 72 тем из 100; у остальных блок просто не показывается, чтобы не рисовать пустой график.
🔥 Метка «Всплеск» ожила — раньше она не срабатывала вообще
Вкладка «Всплески» и оранжевая метка на карточке всё это время показывали ноль: бот сравнивал темы со своими замерами по совпадению слов и почти никогда не находил пару. Теперь всплеск считается по точной истории конкретного поста — метку получают темы, растущие быстрее 15% просмотров в час. Это примерно каждая седьмая тема, то есть метка снова что-то значит: сегодня их 14 из 100. Счётчик в шапке и число меток на карточках теперь сходятся.
29 июля · Руслан
починка
вернули «о чём ролик» на вкладку Видео · вечерний fallback больше не затирает речь · плашка TikTok-ключа перестала врать
🎬 Речь в видео США вернулась и защищена
28 июля Мак закончил сбор рано (20:52) и через 8 минут вечерний резервный сбор на сервере затёр его срез версией без распознанной речи. Данные восстановили, а в резервный сбор поставили защиту: если Мак уже доставил свежее видео — сервер больше не вмешивается.
🔧 Плашка «ключ TikTok» показывала неправду — починили доставку cookies
индикатор на вкладке TikTok говорил «ключ истёк», хотя ключ был живой: из-за технической особенности Docker контейнер продолжал видеть старую копию cookies и после обновления. Починили способ доставки (теперь файл обновляется «на месте») — плашка и резервный сбор всегда видят актуальный ключ.
27 июля · Руслан
починка
продлили TikTok-ключ и перезапустили дневной сбор · дожали скрытие Roadmap на сервере
🔑 TikTok-ключ продлён — сбор хэштегов и видео снова идёт
TikTok в очередной раз сбросил сессию (это его обычный ~3-дневный цикл), утренний сбор упал, а алерт в Telegram сработал как задумано. Руслан заново вошёл в аккаунт, ключ продлён на 3 дня и залит на сервер, упавший сбор за день перезапущен — хэштеги RU/США/Корея и видео с распознанной речью доедут на сайт этим же вечером.
🙈 Roadmap теперь действительно скрыт на всех страницах
вкладку убрали из меню ещё 16 июля, но на сервере 6 страниц (Дашборд, Instagram, Музыка, YouTube, Printology, Конкуренты) остались со старой навигацией — ссылка продолжала показываться. Сегодня довезли скрытие до сервера: меню одинаковое везде, сама страница по-прежнему открывается по прямой ссылке.
26 июля · Руслан
починка
ожили конкуренты WB и Instagram (новый аккаунт Apify) · вечерний серверный сбор больше не затирает полные данные Мака
🛠️ Конкуренты и Instagram снова обновляются
с 24 июля оба раздела молчали: внешний сервис сбора (Apify) отвечал «доступ запрещён» — токен был от чужого/исчерпанного аккаунта. Завели свой аккаунт, прописали новый ключ на сервере и проверили боем: досье 9 из 10 продавцов WB и 40 виральных постов Instagram собраны, дальше всё идёт по расписанию. Бесплатного лимита хватит на несколько дней — дальше нужен тариф Starter ($29/мес).
🛡️ Ночные данные TikTok с Мака больше не затираются
нашли причину «худеющих» подборок: вечерний резервный сбор на сервере иногда «удачно» отрабатывал и перезаписывал полный срез Мака урезанным (25 июля так кириллица сжалась с 79 до 31 хэштега, а у видео пропало «о чём ролик»). Серверный сбор хэштегов отключили — как и было решено ещё 12 июля; серверу оставили только запасной сбор видео на случай, если Мак ночью выключен.
24 июля · Руслан
крупный день
закрыты два пункта из бэклога встречи 22 июля: Twitter/X доведён до уровня Telegram-модуля + звуки TikTok сами показывают строчку из трека для принта
🖼️ Видео США: свежие ролики и обложки теперь каждый день сами
вкладка «Видео США» обновлялась вручную и отставала (висел срез 20 июля, а из 50 обложек грузились только 4 — остальные терялись при ручной выгрузке). Теперь сбор роликов, обложек и распознавание речи встроены в ночной автопрогон: вкладка обновляется ежедневно целиком, без ручных шагов. Все обложки на всех вкладках TikTok проверены — битых нет.
🎬 Видео США: фраза из ролика + «о чём ролик» по-русски
то же распознавание добавили роликам вкладки «Видео США»: бот скачивает аудио топ-15 роликов, выносит на карточку цепкую фразу с переводом и одним предложением объясняет по-русски, о чём ролик. Раньше вкладка была англоязычной «вслепую» — что происходит в ролике, было видно только после клика в TikTok.
🇰🇷 Корея: хэштеги переведены на русский
корейские хэштеги на вкладке «Корея» теперь с русским переводом и пометкой «перевод»: «홍명보 → Хон Мён Бо — футболист, тренер», «메이크업 → макияж». Имена и бренды не просто транслитерируются — бот подписывает, кто это. Переводится автоматически при каждой ночной сборке.
🎤 Звуки TikTok теперь сами говорят, что на них поётся
раньше на карточке звука была только подпись ролика, а печатаемая фраза сидит в самих словах трека — приходилось отслушивать руками. Теперь бот скачивает превью звука, распознаёт слова и выносит на карточку готовую строчку-кандидата на принт (для иностранных — с переводом). Сегодняшний топ РФ: «Чё за лев этот тигр», «Малиновая лада, малиновый закат». Инструментальные треки честно без блока, у распознанного — пометка «распознано автоматически, проверьте». Это запрос №1 со встречи 22 июля.
📈 Теперь видно, что залетает — а не просто список
радар начал запоминать вчерашние тренды и сравнивать с сегодняшними. На карточках появились метки «🆕 новое» (вчера этой темы не было), «🔥 растёт +N» (поднимается в списке) и «N-й день» (тема держится, а не однодневка). Плюс сортировка «Растущие» и счётчик «Новых сегодня» наверху. Именно этого просила команда на встрече: Twitter лучше всех показывает, какая новость залетает — теперь это видно на глаз. Первые метки появятся уже завтра утром, когда накопится два дня истории.
🛒 Проверка спроса не выходя из радара
на каждой карточке — кнопки Wordstat, Google Trends, WB и Ozon: в один клик видно, ищут ли тему в России и что по ней уже продаётся. Раньше приходилось копировать название и ходить по сайтам руками.
⭐ Поиск, избранное и «поделиться» — как на других вкладках
поиск понимает кириллицу («тесла» найдёт Tesla), понравившиеся темы можно копить звёздочкой, карточкой — делиться ссылкой. Наведя на флажки стран, видно место темы в трендах каждой страны.
22 июля · Павел
разбор встречи
новая вкладка «Встреча 22 июля · Инсайты» — фидбек-звонок с Алиной и командой, разложенный по полочкам · три запроса в бэклог · открытый вопрос про наш ров
🗂️ Разбор созвона теперь живёт на сайте, а не в переписке
после фидбек-звонка с Алиной и командой сделали отдельную вкладку в роадмапе: что попросили доработать, что мы из этого поняли и что не успели спросить. Раньше такие разговоры растворялись в чате — теперь их можно открыть по ссылке и вернуться к ним через месяц.
⭐ Зафиксировали главное: продукт работает в бою
команда подтвердила, что с нашими маркерами вставала наравне или быстрее конкурентов — включая тех, кто подбирает темы вручную, без всяких инструментов. Вынесли это отдельным блоком наверх: это самый сильный аргумент о ценности продукта, и он не должен теряться среди задач.
📋 Три запроса разложены по одной схеме: зачем · что уже есть · как сделаем честно
расшифровка трендового звука в строчку для принта, полный список товаров WB с артикулами прямо в карточке и углубление Twitter/X до уровня Telegram. Для каждого сразу видно, зачем это пользователю, на какой наш модуль ложится и где реальные ограничения — чтобы не обещать того, что технически не выйдет.
🧭 Отдельно вынесли стратегический вопрос — в чём наш ров
если мы встаём одновременно с конкурентами по одним и тем же публичным маркерам, то «увидеть тренд первым» не может быть нашим долгосрочным преимуществом. Вопрос остался без ответа — и мы честно отметили это на странице, а не спрятали. Ответ на него определяет, куда развивать продукт дальше.
🎯 Поставили встрече оценку 6/10 и записали вопросы на следующий раз
полезный чек-ин, но почти ничего не оцифровали: «встаём быстрее» — на сколько, в скольких случаях, сколько это дало в продажах. Пока нет цифр, ценность нечем защищать. Список недостающих вопросов лежит прямо на вкладке — чтобы следующий созвон начинался не с чистого листа.
16 июля · Руслан
правка
временно убрали вкладку «Roadmap» из верхнего меню на всех страницах сайта
🙈 Скрыли ссылку на Roadmap в навигации
на всех разделах (Дашборд, TikTok, YouTube, Instagram, Музыка, Twitter/X, Printology, Конкуренты) убрали вкладку «Roadmap» из верхнего меню. Сама страница осталась на месте и открывается по прямой ссылке — просто пока не показываем её в общем меню. Вернуть обратно можно в любой момент.
15 июля · Руслан
документ
скрытая страница-смета «Обоснование расходов» для заказчика · разбивка ежемесячных затрат человеческим языком · доступ по прямой ссылке + пароль как на всём сайте
📊 Смета расходов для заказчика — по каждой статье «за что платим и почему нужно»
собрали отдельную страницу с разбивкой ежемесячных затрат на сервис: две подписки Claude (Руслан + Павел), сервер, Яндекс Плюс, фоновый AI-анализ и сбор данных. Считали честно — без бесплатных стартовых кредитов. Главный вывод вынесен наверх: две трети бюджета — это инструменты разработки, а сам работающий сервис стоит ~2–3 тыс ₽/мес.
🔗 Скрыта из меню + вход по общему паролю сайта
страницы нет в навигации, поисковики её не индексируют, и она защищена тем же паролем-входом, что и весь сайт. Заказчику даём ссылку и пароль. Адрес: 24trendhunter.ru/costs-9k2f7a.html
12 июля · Руслан
новый модуль
новая страница «Twitter/X» (бывш. «Западный радар») — ранний западный сигнал под мерч · бесплатно, без банов · AI-фильтр (смягчён) · фильтр по темам · задеплоено
🌍 Новая страница «Западный радар X» — ловим тренды раньше, чем они дойдут до РФ
то, что вирусится в Twitter/X на Западе (США, Британия, Канада, Австралия) сегодня, часто доходит до российского покупателя через 1–2 недели. Радар показывает эти темы заранее — чтобы успеть подготовить и выложить мерч до того, как спрос придёт к нам. Обновляется каждое утро в 8:30 МСК.
🤖 AI отбирает только то, что реально печатается на футболку
сырой топ Twitter/X — это в основном спорт и местная политика (шум). Поэтому каждое утро DeepSeek просматривает список и оставляет только мерч-пригодное: мемы, кино, музыку, знаменитостей, известных в России — с русским названием и строчкой «почему может зайти». Пример первого дня: радар поймал UFC-волну (Хабиб, Макгрегор, Дана Уайт) — ровно тот тип тренда, про который Алина в интервью приводила пример с футболкой «Хабиб против Макгрегора».
💸 Полностью бесплатно и надёжно — без рискованных схем
прямой сбор из Twitter/X сейчас платный и банится, поэтому берём данные из публичного агрегатора трендов — без аккаунтов, прокси и риска блокировок. Русский сегмент Twitter специально НЕ трогаем: он заблокирован в РФ и для мерча мёртв — решили честно, по итогам отдельного исследования, а не «на всякий случай».
🎛️ Фильтр по темам + вкладка переименована в «Twitter/X»
добавили на страницу фильтр по категориям — как на TikTok: кликаешь «мем», «сериал», «спорт» и оставляешь только нужное, можно выбирать несколько сразу. Заодно вкладка в меню теперь называется «Twitter/X» (по названию источника), а не «Западный радар».
🎚️ Смягчили AI-фильтр — тем стало больше
раз появился фильтр по темам, оператор сам сузит — поэтому AI теперь режет мягче и отдаёт шире (было ~8 тем, стало 20+): спортивные события и известные спортсмены, бренды, ютуберы, пограничные темы. Явный мусор (местная политика, региональные новости, биржа) по-прежнему отсекается.
❓ Объяснили «силу сигнала» прямо на странице
в пояснении над лентой расшифровали, что значат флажки (в каких западных странах тема в трендах), «#N в X» (место в списке трендов) и сортировка «сила сигнала» — она выше ставит темы, попавшие в тренды сразу в нескольких странах: широкая волна вероятнее дойдёт до РФ, чем локальный всплеск.
11 июля · Руслан
правки TikTok
модуль TikTok — вернули СВЕЖУЮ кириллицу (46 тегов, была заморожена с 5 июля) · починили корень: авто-продление TikTok-сессии · сбор кириллицы вернули на Мак · дата обновления в шапке · заглушка вместо «битой» обложки · текст на карточках не обрезается
🖼️ Вернули обложки — 28 из 34 карточек снова с картинками
на сайте пропали обложки хэштегов (везде значок «?»). Разобрались: серверный ночной сбор при неудачном обходе откатывал данные на старые, но папку картинок при этом подчищал — поэтому «данные есть, картинок нет». Вернул обложки на сервер; остальные 6 карточек, где картинки нет, показывают спокойную заглушку «Обложка недоступна» вместо уродливого «?».
🛡️ Защита от повторной пропажи обложек
поставил предохранитель в ночной сбор: если обход TikTok сорвался и вернул пусто/мало тегов — робот больше НЕ трогает уже скачанные обложки (раньше именно это их стирало перед откатом). Проверено на 5 сценариях.
🧊 Нашли и вылечили заморозку: кириллица не обновлялась с 5 июля
по логам вкладка «Кириллица» 6 дней показывала старый срез: TikTok-сессия (cookies) на сервере протухла 5 июля, и каждый вечерний сбор возвращал 1–3 тега вместо ~40 → откатывался на старое. Выяснили и глубже: датацентр-IP сервера душится анти-ботом TikTok (даже со свежими ключами даёт 1 тег), а домашний IP собирает полный список. Поэтому сбор кириллицы вернули на Мак Руслана.
🔄 Свежая кириллица вернулась — 46 тегов, и теперь обновляется сама
заново вошли в TikTok, собрали свежий срез (46 хэштегов + обложки, вместо застрявших 34) — уже на сайте. Главное: починили корневую причину — авто-продление TikTok-сессии и ежедневный сбор на Маке снова работают автоматически (мешал системный запрет macOS на доступ фоновых задач к файлам — выдали разрешение). Теперь ключи не протухнут, а кириллица будет обновляться каждый день сама.
🇺🇸🇰🇷 Обложки на вкладках США и Корея (их вообще не было)
на этих вкладках карточки были без картинок («Видео обновляется») — по той же причине, что и у кириллицы: сервер их не докачивал. Перевели сбор США и Кореи тоже на Мак — теперь по 50 хэштегов с обложками на каждой вкладке (было по 21 без картинок). Собираются вместе с кириллицей раз в день.
📅 В шапке показываем дату обновления вместо «Топ категория»
четвёртый показатель наверху теперь говорит «Обновлено · 11 июля · 23:00» — сразу видно, насколько свежие данные, а не малополезная «топ-категория». На вкладках «Звуки» и «Видео» там по-прежнему «Топ звук» / «Топ автор».
✂️ Длинные слова и метрики больше не обрезаются краем карточки
категория (например «Образование») вынесена на отдельную строку под хэштегом — видна целиком и не сжимает сам хэштег; нижние метрики («на пост», рост, кнопка «Поделиться») переносятся в два ряда вместо того, чтобы уходить за край.
7 июля · Руслан
крупный день
модуль «Музыка» — чарт Яндекс.Музыки (балл + слушатели) · концерты под мерч (Москва/СПб + мировые звёзды за рубежом) · флаги стран · задеплоено
🎵 Новая страница «Музыка» — 3 вкладки (Артисты / Свежие релизы / Концерты)
ранжируем по Яндекс.Музыке — крупнейший ру-стриминг, вернее всего отражает «популярно у российской аудитории» (иностранцы включены сами собой). Балл 0–100 = позиция в чарте, у каждого артиста число слушателей (напр. 385К), готовая динамика ↑↓, обложка, дата релиза, жанр. Свежие релизы вынесены отдельной вкладкой. Обновляется каждый день в 8:10 МСК.
🎫 Концерты под мерч — домашние + зарубежные звёзды
Москва/СПб через Яндекс.Афишу (дата, площадка, «🔥 в чарте» = двойной повод, «через N дней» = окно на мерч). Зарубеж — по кейсу Алины (концерт Канье в Турции → россияне летят за мерчем): проверяем чартовых артистов + список мировых звёзд (Kanye, The Weeknd…) через Bandsintown, только страны, куда реально ездят россияне (Турция, ОАЭ, Армения, Сербия, Таиланд…).
🚩 Флаги страны исполнителя + сортировки на каждой вкладке
страна артиста через MusicBrainz (флаг 🇷🇺🇺🇸 перед именем; при промахе — без флага, не показываем неверный). Своя сортировка на каждой вкладке: артисты — по баллу / кто растёт / слушателям; концерты — сначала в чарте / ближайшие. Задеплоено на 24trendhunter.ru/music.html.
4 июля · Руслан
крупный день
трендовые звуки TikTok (РФ + США) · реальная виральность + копирайт + мем-суть · починка ежедневного сбора хэштегов
🎵 Трендовые звуки TikTok — вкладки «Звуки РФ» и «Звуки США»
у TikTok прямого списка звуков больше нет (Creative Center убрал вкладку Songs, эндпоинт закрыт — проверено вживую). Берём звуки из настоящей трендовой ленты TikTok (ScrapeCreators, 1000 бесплатных кредитов). «Звуки РФ» — наш рынок (там монетизируется), «Звуки США» — западный опережающий сигнал (~2 недели вперёд). Встроенный плеер + клик на ролик, ежедневный сбор 7:50 МСК.
Реальная виральность + копирайт + мем (метод Алины)
по её кейсу «Ча-ча-ча-саранча» = 100 продаж/день. На карточке звука: «🔥 в N роликах» (реальный счётчик использования из /tiktok/song — настоящий сигнал тренда, по нему ранжир), метка «✅ можно / ⛔ копирайт» (её ограничение №1) и мем-подпись залетевшего ролика — дизайнеру сразу видно, что печатать.
Фикс: ежедневный сбор хэштегов «Кириллица»
осталось 3 мусорных хэштега (от 26 июня) и слетели обложки — серверный cron откатывал ВСЕ рынки разом, когда контейнер bot пересоздавался под тяжёлой сборкой. Переписал: рынки (ru/us/kr/video) собираются порознь, с ретраем и своим откатом — сбой одного больше не роняет остальные. Теперь 34 кириллических + обложки; все 4 рынка собрались с первой попытки.
3–4 июля · Павел
крупный день
локализация на 7 языков · проверка спроса и разрыва в карточке · Instagram · сквозной Share · вкладка «Конкуренты» с живыми досье WB
Демо-локализация на 7 языков
планетка 🌐 внизу слева → перевод всего интерфейса и трендов через Yandex (не жжём токены); узбекская латиница + арабский с разворотом справа налево (RTL). Русский — источник правды.
Проверка спроса и разрыва рынка в карточке (метод Алины)
AI даёт поисковые ключи + мерч-ключи (футболка/мерч/принт/стикеры). Кнопки: 📊 Wordstat (число показов), 📈 Google Trends, 🛒 На WB, 🅾️ На Ozon (открывают реальную выдачу — сколько карточек уже есть). Работают по выбранному ключу.
Instagram как источник
отдельная вкладка виральных Reels/постов через Apify (курируемые аккаунты 9gag/daquan/crunchyroll…), обложки кэшируются локально. Западный сигнал (Запад опережает рунет ~2 недели).
Сквозная кнопка «Поделиться» + прожектор
на карточке любого источника: ссылка на конкретный тренд. Открываешь — карточка скроллится и подсвечивается, остальное блюрится. Гейт запоминает адрес и после пароля открывает именно её.
Вкладка «🎯 Конкуренты»
20 игроков DTF-печати на WB из исследования 2026 (по моделям: генераторы / D2C / лицензионные / …) + ЖИВЫЕ досье по seller-id через Apify: реальная компания + ИНН, число товаров, цены, отзывы, рейтинг, Δ новых SKU по срезам (6:00 и 12:00 МСК).
Фикс: кнопка «Принт» из «Окна печати»
выкидывала на ленту вместо Принтологии (баг bfcache + рендер модала). Нашёл через отладку в браузере, починил — теперь открывает генератор промтов.
Обход блокировки WB нашего сервера
WB режет наш NL-сервер антиботом → решено Apify-актёрами (скрейпят на своей стороне); свой РФ-прокси оставлен запасным (только для WB/Ozon). Пароль входа сменён.
2 июля · Павел
12 пунктов
YouTube Shorts · «Окно печати» · приоритет аниме · категория «Книги» · +21 канал · московское время + утренние прогоны · исследование в роадмапе
YouTube Shorts
парсер на официальном YouTube Data API (фильтр по кириллице = рунет), отдельная вкладка, авто-обновление ежедневно 7:30; ключ добавлен на сервер.
Вкладка «🖨 Окно печати» (Printability Window)
единая мерч-подборка из Telegram + TikTok + YouTube Shorts, AI-оценка печатабельности, PrintScore, кнопка Printology на карточках (в т.ч. ad-hoc для источников не из БД), авто-сборка 9:00.
Аниме — мягкий приоритет
нашли причину недосбора (аниме отсекалось по TOP_N ещё до AI-категоризации); пометили аниме-каналы, добавили бонус к сортировке + гарантию представительства. Честный trend_score не тронут, задокументировано в CLAUDE.md.
Планировщик переведён на московское время
был UTC — вечерний отчёт подписчикам теперь уходит в настоящие 19:00 МСК (раньше де-факто 22:00).
Два утренних обновления данных
4:00 и 8:00 МСК, без рассылки — чтобы ловить всплески, пришедшие ночью из-за океана (ночь в США → утро у нас), а не только в вечернем прогоне.
Исследование «Модель зарождения трендов мерча»
оформлено: отдельная вкладка «🔬 Модель трендов» (формула восходящего тренда + источники) + конспект в репозитории.
Обнаружено
второй экземпляр бота с тем же токеном поллит извне — не ломает рассылку, но мешает приёму команд; проверить с Русланом.
Новая категория «Книги» (как аниме)
15 книжных Telegram-каналов (Литрес, Эксмо, МИФ, Inspiria, ФантЛаб, Corpus, Год Литературы и др.) + «книги» стала 9-й категорией ИИ + мягкий приоритет с гарантией + книжные запросы (BookTok) в Shorts. На прогоне уже дала 20 трендов.
+6 тематических каналов
тематику проверяли вживую через t.me/s/, не угадывали: аниме — AlexandriA, kaiju-школа японского; игры — GL1n (Genshin); шоу-биз — ThreeN1ne; трендвотчеры — Москвичка, NN (медиа про интернет, 2.24M).
Ссылка на первоисточник
на карточках «Окна печати»: Telegram → пост, TikTok → хэштег, YouTube → видео.
Фиксы «Окна печати»
корректное пустое состояние («ничего по фильтру» вместо «запустите скрипт»); генерируемые данные-JSON (tiktok/youtube/printability) исключены из деплоя, чтобы rsync их не затирал.
Запущен прогон без рассылки
книги, приоритет аниме и новые каналы уже с реальными данными на дашборде (не ждали утра).
1 июля · Павел и Руслан · Интервью с Алиной
разбор + фикс
Интервью с подборщиком трендов · рейтинг по разделам на дашборде · бэклог фич из разговора
Провели интервью с Алиной
оператором подбора трендов (селлер на Wildberries с командой дизайнеров). Полный продуктовый разбор — в docs/interview_admin_summary.md.
Рейтинг по разделам на дашборде
добавлена сортировка «🎯 По скору» (по умолчанию), номер #NN считается внутри выбранного раздела, а не сквозной. Топ аниме теперь виден и не «тонет» под трендвотчерами с миллионами просмотров.
Валидация
избранное ⭐ и «популярные видео TikTok» — ровно то, чего ей не хватало; формула скора признана «классной».
Идеи из интервью в работу (трендовые звуки, три рынка TikTok, нишевый индекс, новые источники) перенесены наверх — в список «Что осталось».
29 июня · Павел и Руслан
8 пунктов
Слияние веток · единый пароль · таб Telegram/TikTok · переезд ИИ на OpenRouter · Printology v2 (редактор промта + генерация принта) · распределение моделей · цены в рублях
Слияние веток и восстановление сайта
ветка Руслана (TikTok) и Павла (дизайн) сведены без потерь — большой Roadmap и новая карточка тренда вернулись на сайт, свежие данные TikTok сохранены.
Единый пароль входа
устранена петля редиректа (dashboard ↔ gate ↔ tiktok ↔ roadmap) — везде один пароль; страница prd.html тоже закрыта паролем.
Таб-переключатель Telegram / TikTok
в шапке слева у логотипа, с подчёркиванием активной вкладки.
Переезд ИИ с DeepSeek на OpenRouter
и анализ трендов, и Printology работают через OpenRouter; ключ в .env на сервере, анатомия промтов вынесена в отдельный редактируемый файл.
Printology v2 — редактор промта (Фаза 1)
поля анатомии редактируются, кубик 🎲 у каждого поля переписывает часть с учётом тренда, «Переделать промт» собирает финальный, доп-составляющие, карточка «+» с 18 направлениями.
Printology v2 — генерация принта (Фаза 2)
сам принт (без мокапа) рисуется в попапе на отдельном экране с кнопкой «Назад», лупа показывает полное разрешение файла, скачивание готового принта.
Модели под задачи
6 промтов → Claude Sonnet 4.5 (креатив), кубик и «Переделать» → Gemini Flash Lite (скорость), анализ трендов → Gemini Flash, картинка → Flash Image (черновик) или Nano Banana Pro (качество, выбор в момент генерации).
Цены генераций в рублях
прямо у кнопок + авто-синхронизация раз в день (прайс OpenRouter + курс ЦБ РФ).
💰 Сколько стоит генерация (в рублях, обновляется автоматически раз в день)
Операция Модель ₽ за раз
Открытие тренда (6 промтов)Claude Sonnet 4.52.18 ₽
+ ещё направлениеClaude Sonnet 4.50.52 ₽
🎲 Кубик (правка поля)Gemini Flash Lite0.003 ₽
Переделать промтGemini Flash Lite0.006 ₽
Картинка — черновикGemini Flash Image2.98 ₽
Картинка — Nano Banana ProGemini 3 Pro Image10.62 ₽
Средний путь (вход + 6 кубиков + 1 направление + 2 переделки + 2 черновика)8.68 ₽
Тот же путь, но 2 картинки Pro23.97 ₽
Курс на 30.06.2026 — 77.75 ₽/$ (ЦБ РФ). Текст почти бесплатен, основная стоимость — картинки.
24 июня · Павел
7 пунктов
Планирование: фазы 5–9 и масштабирование · воркшоп · восстановление доступа · уборка лоадера · дизайн-консистентность
Дедлайн сервера в календарь
подписка Timeweb Cloud оплачена до 5 сентября — добавлена блок-плашка «миграция на nuxt.cloud» в календарь Roadmap.
Разобрали и приоритизировали все идеи в дорожную карту
все идеи разложены по приоритетам 0–4 с оценкой масштаба задач (Выборка трендов + воркшоп, Printology v2, источники и переключатель платформ, динамика и математика тренда, полировка).
Масштабирование пополнено
обучение нейросети на реальных принтах, Pinterest и YouTube как источники, и блок «географическое масштабирование» (СНГ / Meta / TikTok-контуры, Fine-Tune под культурные ключи, гейт «сначала результат в РФ»).
Воркшоп (понедельник 29 июня)
подготовлено 20 вопросов к бизнесу — только механика сервиса, без UI/UX (docs/workshop.md).
Проверили формулу всплеска
сейчас всплеск считается только по росту просмотров (≥20% между двумя срезами за 12 ч); репосты, реакции и комментарии не учитываются — расширение перенесено наверх, в «Динамику и математику тренда».
Убрали лоадер первичной загрузки
(полноэкранную мышь «Загружаем тренды…») — дашборд теперь открывается сразу карточками, чище и консистентнее.
Дизайн-консистентность
создан скилл-аудитор, проект прогнан по дизайн-системе; сырые цвета сведены к токенам, система дополнена (жёлтый = Stars, палитра 6 углов, вторичная шкала шрифтов). Восстановлен SSH-доступ к серверу, всё задеплоено.
21 июня · Руслан
4 пункта
TikTok-модуль: парсинг Creative Center, обложки, граф динамики, страница трендов
Парсинг TikTok Creative Center — Playwright с cookies обходит 15 категорий, собирает хэштеги с просмотрами от 500 тысяч; из ~200 хэштегов отбираются только кириллические — около 24–33 рунет-трендов за прогон
Обложки и график динамики — для каждого тренда перехватывается API-ответ TikTok: берёт graph за 7 дней (0–100) и обложки реальных видео; сохраняются локально в docs/tiktok_covers/
Логика тренда — направление («📈 Растёт» / «📉 Снижается») считается из последней точки графика относительно среднего; убраны 9 карточек без данных
Страница tiktok.html — карточки с обложками, баллами, графиком и категорией; мульти-фильтр по категориям; доступна на 24trendhunter.ru/tiktok.html
19 июня · Павел
6 пунктов
Printology (частично), мышь в лоадере, анимация выхода, смена пароля, Stars-реакции, дизайн-система кнопок
Printology — частичная реализация: бэкенд POST /api/printology, модал с 6 промптами (6 углов: буквальный / метафорический / ироничный / минималистичный / культурный ремикс / типографический), структура промпта из 7 полей, скелетон-анимация ожидания, фикс обрезки ответа DeepSeek (max_tokens 2500→5000). Остаётся: подключить Freepik для генерации изображений по промптам.
Мышь ReactionHunt в лоадере пайплайна: мышь выныривает из порталов на сетке 5×5 пока идёт сборка, убегает при наведении курсора; цвет портала адаптируется к тёмной/светлой теме
Анимация завершения сборки: «✓ Загрузка завершена» → мышь убегает → интерфейс уезжает вниз → морда кота летит на зрителя и растворяется → дашборд появляется; каунтдаун цифр замедлен для читаемости
Смена пароля с авто-киком сессий: сессия хранится как btoa(пароль) — при смене пароля все чужие вкладки выкидывает автоматически без ручной чистки cookie
Платные реакции Telegram (⭐ Stars): бот распознаёт Stars в реакциях, дашборд показывает ⭐ N на карточке, добавлен фильтр «⭐ Платные» и сортировка по звёздам; добавлен канал @digital_ninjaa
Дизайн-система кнопок: единые базовые классы .btn четырёх типов (primary / ghost / chip / muted) — кнопка Printology, фильтры, «Запустить» и download-кнопка приведены к одной системе токенов
18 июня · Павел
7 пунктов
Кошачий лоадер, новые логотипы, оптимизация спрайтов, всплески и сквозные фильтры
Новый лоадер сборки: затемнение и блюр всей страницы с интерактивной головой кота (следит за курсором, 17 поз), прогресс-бар + процент, крестик отмены
Статусы сборки очищены от эмодзи; этап AI назван понятнее — «DeepSeek анализирует базу данных»
Новые логотипы: квадратная марка в хедере дашборда и Roadmap, полный лок-ап (кот + TREND HUNTER) на странице входа
Спрайты кота ужаты 29 МБ → 1.7 МБ (уменьшение ×2 + палитра) — починен баг «спрайты не подтянулись» при первом запуске сборки
Сквозная сортировка и фильтрация ленты: категория, сортировка, тумблер «с комментами», поиск — всё работает вместе
Таб «🔥 Всплески» рядом с «Все» (жёлтый) + бейдж «ВСПЛЕСК» на карточках; бэкенд помечает ускорившиеся тренды, плитка и таб считаются из одних данных
Кнопка контакта с админом канала: добавлена и затем убрана по решению — прямой ссылки «написать админу» Telegram не даёт
17 июня · Павел
крупный день
Качество выдачи, динамика трендов, чистка каналов и интерфейса
Откат вредных правок стороннего агента: убран искусственный буст аниме в скоринге, починены обрезанные заголовки и дублирующаяся шкала баллов
DeepSeek-анализ переписан: «почему в тренде» объясняет суть, а не пересказывает цифры; аудитория — конкретный сегмент
Критический баг: единый запрос к DeepSeek на 100 трендов уходил в таймаут → разбили на батчи по 20, анализ стал надёжным
Источники-ссылки: убрана склейка чужих постов — ведут на релевантный пост
Карточка: добавлены комментарии 💬 (собираются из Telegram); убран «прогноз» — не нёс пользы
Шапка переделана: логотип ×2, кнопка «Запустить» одной высоты с Roadmap и жёлтая, убраны часы/таймер/LIVE
Фавикон + брендовый лоадер (логотип с крутящимся кольцом) вместо безликого спиннера
Убраны фейковые элементы: правая панель с «Пульсом», «Всплески», выдуманная статистика
Возврат с Roadmap больше не моргает лоадером (кеш в сессии)
Аниме-каналы: удалены сломанные, добавлены 8 проверенных вживую (@jutsu_anime, @mangabuff, @animedia, @anistar, @deep_ruanime, @animego, @animeart, @ranobelib)
Чистка: убраны @meduzalive и @varlamov из политики; фильтр «Другое» → «Всё подряд»
Мониторинг динамики (Фаза 1): таблица срезов, запись каждые 2 часа без DeepSeek — фундамент под «всплески»
Директивы: защита готовых компонентов, процесс деплоя, самопроверка перед показом
16 июня · Павел
22 пункта
Точечные запросы по ходу дня, не входившие ни в одну фазу выше
Страница-шлюз с паролем (gate.html) — авто-валидация без кнопки «ОК», красный/зелёный статус
Логотипы — Rex Print + Trend Hunter на гейте, новый LogoLine в хедере дашборда и Roadmap
Переименован адрес: dashboard_mockup.html → dashboard.html (убрали слово «mockup»)
Убран эмодзи 🗺 из текста «Roadmap»
Cache-Control: no-store на HTML — защита от обхода пароля через кэш браузера
Кнопка «Запустить сейчас» — добавили, убрали, вернули на верное место (панель «Следующий запуск») с лоадером и реальным прогрессом по стадиям
Живые часы и дата в хедере (были статичной заглушкой)
Карточка тренда — полный паритет с ботом: 3 под-шкалы, аудитория, прогноз, разбивка по реакциям, источники
Цветные шкалы анализа — зелёная/жёлтая/фиолетовая вместо сплошного фиолетового
Карточка разбита на 2 колонки (Анализ тренда / Подробности) — решает «резиновость» по высоте
Источники — кнопки в ряд вместо списка ссылок, посещённые помечаются цветом (:visited)
Фильтры — реальные категории вместо Горячие/Новые/Аниме; «Аниме» закреплена сразу после «Всплески», «Другое» — в конец
Дропдаун-заглушка источника трендов: Telegram активен, TikTok — неактивный пункт под будущий режим
«Пульс тренда»: «51 / 100» → «51 баллов» — без сбивающей дробной нотации
Починен баг: дашборд запрашивал limit=50, пайплайн сохраняет до 60 — счётчики не совпадали
Подключена забытая регулярная чистка старых трендов (cleanup_old_trends) — функция существовала, но не была в расписании
Аудит аниме-каналов — обнаружено, что AI-поиск новых источников ненадёжен без проверки по факту
Зафиксирован процесс деплоя: `bot` и `api` пересобирать вместе, не по отдельности
Лимит трендов за прогон поднят с 60 до 100 — все 100 получают полноценный AI-анализ без заглушек
Починено логирование в контейнере `api` — раньше показывал только WARNING+, прогресс пайплайна был не виден в логах
Анимация появления: цифры считаются от 0, шкалы растут слева-направо, карточки появляются каскадом
Метрика «Трендов» заменена на «Просканировано» — живое число кандидатов до отсечки
Куда мы идём

Не дашборд трендов, а конвейер «тренд → прибыль»

Тренд — это сырьё. Мы доводим его до результата: контент, принт, товар на полке, деньги. Без ручного труда дизайнера, на скорости новостной ленты.

Было
Сервис, который показывает, что популярно
Стало
Машина, которая превращает популярное в продажи

Пользователю не нужны тренды. Ему нужно знать, что сделать сегодня — чтобы заработать.

Каждый тренд в системе отвечает на один вопрос: «как именно на этом сделать деньги прямо сейчас». Не аналитика ради аналитики — подсказка к действию.

Во что мы верим
01

Тренды никто не покупает — покупают результат

«Узнайте, что сейчас популярно»
«Вот что напечатать и выложить сегодня ради продаж»
02

Деньги живут в последней миле

Найти тренд — половина дела. Ценность там, где из него рождается готовый артефакт: пост, принт, карточка товара. Мы достраиваем именно этот, самый дорогой кусок.

03

Кто увидел раньше — тот заработал

На взлетевший тренд смотреть поздно. Самое дорогое — поймать сигнал в момент зарождения. Чем раньше — тем выше маржа.

04

Важна не популярность, а потенциал

Вырастет ли дальше, сколько проживёт, можно ли монетизировать, влезем ли в нишу. Мы оцениваем будущее тренда, а не его прошлое.

05

Глубже радар — больше денег

Трендовая аналитика — игра в покрытие. Больше источников → раньше сигнал → больше возможностей. Клиент покупает не интерфейс, а глубину радара.

06

Тренд без подсказки бесполезен

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

Что мы строим
01

Экран «Что сделать сегодня?»

главный экран
Вместо «ТОП трендов дня» — лента готовых действий с фильтром по каналу: где именно тебе это применить.
TelegramTikTokYouTube InstagramМаркетплейсыФутболки МерчБренды
02

Карточка тренда нового поколения

аналитика
Не «сколько лайков», а стоит ли в это вкладываться: оценки, прогноз и прямые рекомендации.
Оценки
  • Trend Score
  • Early Momentum Score
  • Monetization Score
  • Longevity Score
  • Competition Score
Прогноз
  • стадия тренда
  • ожидаемый срок жизни
  • вероятность роста
  • вероятность угасания
Рекомендации
  • что сделать сегодня
  • что сделать завтра
  • чего не делать
03

Готовые решения под ключ

генерация
Под каждый тренд — пачка готовых артефактов. Бери и публикуй.
Контент
  • 10 идей постов
  • 10 идей рилсов
  • 10 сценариев шортсов
  • заголовки и хуки
Принты
  • 10 концепций принтов
  • 5 промптов для генерации
  • 3 варианта стилистики
  • прогноз продаж
Маркетплейсы
  • карточки товаров
  • описания
  • SEO-теги
  • рекламные креативы
04

Радар раннего обнаружения

Early Momentum
Early Momentum Score ищет не самое популярное, а то, что растёт быстрее нормы — пока остальные не заметили.
скорость просмотровскорость репостов скорость комментариевновые упоминания рост за 1-й часрост за 1-е сутки
05

Кроссплатформенное подтверждение

анти-фейк
Тренд, вспыхнувший сразу на нескольких площадках, — настоящий. Чем больше независимых подтверждений, тем выше приоритет.
TelegramTikTokYouTube Shorts RedditXVK
06

Оценка монетизируемости

сколько денег
Один тренд — три способа заработать. Считаем потенциал по каждому.
Printability Score
  • футболки
  • мерч
  • наклейки
Contentability Score
  • посты
  • видео
  • рилсы
Productability Score
  • товар
  • оффер
  • инфопродукт
  • рекламная акция
Последняя миля · от идеи до напечатанного товара
🖨

Авто-раскладка на DTF-ленту

убирает дизайнера
Самый дорогой ручной труд в печати — раскладка файлов на плёнку. Мы его автоматизируем: готовый принт сам встаёт на DTF-ленту (gang sheet) так, чтобы плёнки ушло минимум. Файл сразу готов к печати — без дизайнера, без правок.
1 · Подготовка принта
  • удаление фона, контур
  • размер и DPI под печать
2 · Раскладка на ленту
  • nesting нескольких принтов
  • минимум пустого места = минимум плёнки
3 · Экспорт ленты
  • готовый файл под DTF-принтер
  • ширина рулона, метки реза
4 · Очередь печати
  • партия принтов → одна оптимизированная лента
  • меньше работы, ниже себестоимость
DTF gang sheet / nestingавто-подготовка файла минимум плёнкиминус ручная вёрстка
🧠

Нейросеть учится на реальных принтах

самообучение
Выгружаем принты, которые уже приносят деньги. Нейросеть разбирает каждый по тегам Printology и понимает, что именно продаётся. Так Printability Score превращается из догадки в знание о реальных продажах.
Глубина радара · охват = деньги
📡

Клиент покупает не интерфейс, а глубину радара

монетизация
Чем больше источников сканирует система — тем раньше виден сигнал и тем больше возможностей. Это и есть товар.
Базовый
100
каналов
Профессиональный
1 000
каналов
Агентство
10 000+
источников
+ Pinterest · визуальные тренды+ YouTube / Shorts+ платные тренд-сервисы
Выход в мир · после обкатки в РФ
🌍

Один движок — десятки рынков

глобально
Сначала доказываем результат в России. Потом — везде, где хлопок дёшев и есть печать. Под каждый рынок — свой Fine-Tune (свои мемы, повестка, культурные ключи) и своя стратегия источников.
Telegram-контур · СНГ
  • Узбекистан — хлопковый гигант
  • Казахстан — Telegram + VK
  • Кыргызстан · Беларусь · Азербайджан
Meta / платные сервисы
  • Индия — швейный гигант
  • Турция — текстильный хаб
  • Пакистан · Бангладеш · Египет
TikTok / локальные сети
  • Вьетнам — швейный гигант
  • Индонезия — огромный рынок
⚠️ Афганистан — хлопок есть, но интернет/соцсети ограничены, нестабильность. Держим «на потом». Для Бангладеш / Вьетнама рычаг — «копеечное производство», а не хлопок (он импортный).
Fine-Tune под культурусвоя стратегия источниковгейт: результат в РФ
🎯

Кому мы это продаём

клиенты
Везде один и тот же клиент — тот, кто печатает и продаёт мерч, просто на своих площадках.
Принт-студии и DTF-цеха
  • печать на плёнку / ленту
  • прямые получатели авто-раскладки
Селлеры маркетплейсов
  • РФ/СНГ — WB, Ozon, Kaspi, Uzum
  • Турция — Trendyol; Индия — Flipkart, Meesho
  • ЮВА — Shopee, Tokopedia; Египет — Jumia
Бренды и мерч-агентства
  • капсулы под инфоповод
  • товар под тренд «здесь и сейчас»
Весь путь · от тренда до прибыли
Не: тренд → просмотр
01Трендсырьё: что взлетает сейчас
02Оценкаскор и потенциал
03Прогнозвырастет или угаснет
04Идеячто из этого сделать
05Контент / товарформат под канал
06Супер-настройка промптастиль, цвет, слоган под тренд
07Принтготовый макет
08Раскладка на DTF-лентуавто-nesting, минимум плёнки
09Публикация на маркетплейсахпо культурным ключам региона
10Реакция покупателяспрос и продажи
11Масштабированието, что зашло — в тираж
12Прибыльрезультат всей цепочки
Перед публикацией — супер-настройка промпта: он выдаёт принт, который мы публикуем на маркетплейсах с учётом культурных ключей региона. Смотрим реакцию покупателя → реагирует хорошо → масштабируем → масштаб прошёл успешно → прибыль. Это уже не «дашборд трендов», а операционная система для быстрого заработка на возникающих информационных волнах.
Глубокое исследование · Print-on-Demand

Модель зарождения и коммерциализации трендов мерча

Большинство продавцов на WB/Ozon/Etsy реактивны — заходят в тренд на пике или спаде и попадают в перегретую нишу. Преимущество — только в раннем обнаружении. Это исследование описывает, как из информационного шума рождается печатный хит, и даёт формулу, по которой мы стараемся ловить восходящие тренды.

Ключевая идея — «Окно печатной готовности»

Виральность ≠ печатабельность. Пока вирусный контент не превратился в статический символ или короткую фразу (чистый PNG, вектор, канон-шрифт) — печатать буквально нечего, и рост просмотров даёт ложный сигнал. Именно момент кристаллизации символа, а не охват видео, отделяет тренд, который принесёт деньги, от того, что останется просто видео.

Жизненный цикл тренда
1Инкубациязакрытые сообщества (Reddit, X, Discord)
2Аудио-визуальная спайкаTikTok / Shorts / Reels, звук + эмоция
3Окно печатипоявляется чистый символ / канон-фраза
4Кросс-взрывUGC, СМИ, переводы, фан-арт
5Пикнасыщение, бренды, мемкоины
6Выгораниеусталость, распродажи, long-tail
Входить нужно на этапе 3 — когда открылось окно печати, но рынок ещё не насыщен. Главный ранний сигнал именно для мерча: рост поисковых запросов вида «[тренд] png / vector / transparent» — значит дизайнеры уже готовят макеты.
Формула восходящего тренда
Trend Score = W₁·Vg + W₂·Uc + W₃·Pw + W₄·Cs − W₅·Td
Даже при астрономических Vg и Uc: если печатабельность (Pw) = 0 — итоговый скор низкий. Печатать нечего.
VgСкорость роста20%
Первая производная числа запросов (Google Trends, TikTok Search) за 24–48ч — насколько круто загибается интерес.
UcОбъём UGC25%
Сколько независимого контента сделали пользователи: видео под звук, ветки обсуждений — глубина проникновения.
PwОкно печатной готовности40%
Самый важный. Есть ли готовый визуальный символ / канон-фраза (изолированный фон, чёткий силуэт, повторяющийся вектор). 0 — размытые скриншоты; 1 — готовый принт.
CsКросс-платформа15%
На скольких площадках всплеск: 1 = 0.5, 2 = 1.0, 3+ = 1.5. Тренд на нескольких площадках = не случайность.
TdСтарение и насыщениештраф
Дни с первого всплеска + доп. штраф, если мем ушёл в корп-аккаунты и СМИ (для Gen Z это «смерть» мема).
Как мы это применяем
🖨
Вкладка «Окно печати» — наша адаптация без Computer Vision

Мы взяли ядро модели и адаптировали под наши данные: печатабельность (Pw) оценивает AI по заголовку (есть ли готовый символ/фраза) вместо анализа картинок; собираем кандидатов из Telegram + TikTok + YouTube Shorts, считаем PrintScore = печатабельность × (охват + кросс-платформа) и показываем единой лентой с кнопкой Printology. Виральный, но непечатаемый тренд не всплывает — ровно как в модели.

Ключевые кейсы 2024–2025
США · арт

Chill Guy

Готовый изолированный рисунок → нулевая задержка окна печати. От TikTok до глобального мема <2 недель, мгновенный взрыв продаж, токен $CHILLGUY достиг $580M.

Таиланд · животное

Moo Deng

Фото бегемота само не продавалось. Окно открылось, когда фанаты сделали стилизованные PNG с надписями («икона женской ярости»). Дошло до РФ за ~3 недели → сотни листингов на WB/Ozon.

США · фраза

Hawk Tuah

Вирусная фраза → окно за сутки (канонизация звукоподражания). Кепки с типографикой = ~$65k с первой партии. Спад — из-за скам-мемкоина: репутация инфлюенсера коррелирует со спросом.

Россия · субкультура

Скуф и Альтушка

Сленг с «Двача» → окно печати открыла визуальная новелла (чёткие образы). Вал продаж на WB/Ozon, локальный цикл 6–12 месяцев — апеллирует к культурному коду.

Российская специфика

Импортные тренды доходят до РФ с лагом 1–3 недели. Точки входа — Telegram-агрегаторы мемов + рунет-TikTok и YouTube Shorts (ровно наши источники). Первыми на 3–4 день выходят стикеры и кружки (дешёвый цикл), футболки — после доказанной устойчивости. Локальные тренды (Скуф, Русы против ящеров) живут 6–12 месяцев. Английский текст на мерче часто сохраняют — воспринимается как часть Y2K-эстетики.

Источники

Исследование опирается на реальные кейсы и данные — не пустые слова. Ключевые источники:

1.Print On Demand Market Size 2034 — IMARC Group
2.Is Print-On-Demand Profitable 2026 — Printway
3.Tools to Discover POD Trends — Gooten
4.Memetics — Wikipedia
5.Chill Guy — Wikipedia
6.CHILLGUY Token — Atomic Wallet
7.Haliey Welch (Hawk Tuah) — Wikipedia
8.Hawk Tuah Merch — Mashable
9.Moo Deng — ABS-CBN
10.Moo Deng Meme Coin — CoinEx
11.«Baby im» листинги — Wildberries
12.«Cute Baby» листинги — Ozon
13.Skuf (скуф) — Wikipedia
14.Виталий Терлецкий («Альтушка для скуфа») — Toonsmag
15.Oshikatsu — Wikipedia
16.Chiikawa Goes Global — Nippon.com
17.Zanmang Loopy × WePlay — Korea Bizwire
18.Men against Lizards — Steam
19.Redbubble vs Etsy 2026 — Merch Titans
20.EverBee vs Alura — EverBee
21.Ранние сигналы (Pinterest) — Insight Agent
22.Как мемы стали рекламой — TN Admedia

Полный конспект — в репозитории (docs/research_trend_genesis.md), 49 источников в оригинале исследования.

Фидбек-звонок · 22 июля 2026

Встреча 22 июля. Инсайты

Групповой созвон: Алина на громкой связи + команда. Это не каздев с нуля, а чек-ин с действующими пользователями, у которых на кону реальные деньги — они уже продают мерч по нашим маркерам. Ниже: что попросили доработать, что мы из этого поняли и что не успели спросить.

Главное: продукт уже работает в бою

По словам команды, с нашими маркерами они запускали трендовые темы и вставали наравне или быстрее конкурентов — включая тех, кто вообще не пользуется инструментами и подбирает темы руками («люди, которые шарят за футбол»). Это значит, что мы не догоняем рынок, а идём с ним синхронно или впереди. Всё остальное на этой странице — про то, как этот отрыв увеличить и удержать.

Статус на 2 сентября · что из этого сделано

Все три запроса со звонка закрыты

22 июля команда попросила три доработки. Два пункта закрыли через два дня, третий — 2 сентября: препятствие, из-за которого список товаров WB откладывали, оказалось обходимым. Ниже — каждый запрос: что просили, что теперь есть, и как это выглядит на живых данных.

🎤

Запрос 1. Бот сам расшифровывает звук в строчку для принта

сделано 24 июля

Просили: «чтобы он сразу записал текст песни» — печатаемая фраза сидит в словах трека, а не в подписи ролика, и её приходилось отслушивать руками.

Карточка трендового звука со строчкой из трека и переводом

Бот скачивает звук, распознаёт вокал и выносит на карточку готовую строчку-кандидата на принт. Для иностранных треков — сразу перевод на русский. Дизайнеру не нужно слушать ролик: фраза видна в списке.

На снимке — реальная карточка с сайта: трек звучит в 551 тысяче роликов, распознанная строчка «Been spending most their lives living in a gangsta's paradise» и перевод под ней. Пометка «распознано автоматически» стоит честно — мы не выдаём машинную расшифровку за факт. Инструментальные треки остаются без блока, а не с выдуманным текстом.

Открыть трендовые звуки →
🐦

Запрос 2. Twitter/X — вровень с Telegram по возможностям

сделано 24 июля

Просили: «больше фичей и возможностей» у X. Аргумент команды: именно Twitter лучше всех показывает, какая новость залетает и её можно монетизировать, — а развит он был слабее всех.

Карточка западного радара X с метками «новое» и «хит-потенциал»

Радар запоминает вчерашние темы и сравнивает с сегодняшними. На карточках появились метки «новое», «растёт +N» и «N-й день» — видно не просто список, а что именно набирает ход. Плюс поиск, избранное, фильтр по темам и проверка спроса в один клик.

На снимке — живая карточка радара: тема Fable 5.1, помечена как «новое» и «хит-потенциал», рядом — флаги стран, где она в трендах, и кнопки Wordstat / Google Trends / WB / Ozon, чтобы проверить спрос в России не выходя из радара.

Открыть радар Twitter/X →
🛒

Запрос 3. Список товаров WB прямо в карточке — с артикулами

сделано 2 сентября

Просили: «чтобы не заходить на сам Wildberries» — пробежаться по названиям, решить «нужно / не нужно» и скопировать артикул, не открывая маркетплейс.

В карточке тренда появилась кнопка «Что уже есть на WB». Она разворачивает список: наименование, цена, отзывы и артикул — артикул копируется одним нажатием. Сверху стоит главное число: сколько товаров именно по теме, а не сколько всего нашёл Wildberries. Это и есть ответ на вопрос «ниша занята или свободна».

Список товаров WB по ключу «1 сентября футболка» — ниша занята

Ниша занята. Тренд «1 сентября»: по теме — 36 товаров из 100 проверенных, всего WB нашёл 28 425. Видно и что продают («Мама первоклассницы 2026»), и по какой цене, и сколько отзывов — то есть насколько плотно занято.

Пустая ниша: по теме на WB ничего нет

Окно печати. Тренд про кошку Оскар: по теме — ничего. Wildberries показал 42 товара, но совпадает только слово «Оскар» — это футболки с именем, к тренду отношения не имеют. Они не выброшены, а убраны под ссылку «показать частичные совпадения».

Почему не фильтруем по продавцам-«печатникам», как предлагали: печатают все подряд — у одного ключа 36 товаров от двух десятков разных продавцов. Такой список пришлось бы вести руками, и он прятал бы как раз новых конкурентов. Поэтому сверяем название товара с самим трендом; латиница и кириллица считаются одним словом («Лабубу» = «Labubu», «брейнрот» = «brainrot»).

Открыть дашборд →

Отдельно про сам блокер: пункт висел с пометкой «WB не пускает наш сервер». Так и было — но мы ходили за товарами так, будто открываем сайт браузером, а такие визиты с зарубежного сервера Wildberries режет. Оказалось, есть служебный адрес, который отдаёт те же товары как данные, и с сервера он отвечает нормально. Ни прокси, ни доступа к вашему кабинету, ни API-токена продавца не понадобилось.

Что ещё сделали с 22 июля

Кроме трёх запросов со звонка. Работали вдвоём: Павел — калькулятор заказов и внешние сервисы, Руслан — источники, сбор и качество кода.

🧮

Калькулятор заказов переехал из Excel на сайт

Павел · 19 и 25 августа

Расчёт заказа по шелкографии жил в Excel-файле, который передавали друг другу. Теперь это страница сайта: считает один в один с файлом — проверено на 68 сценариях из 68, ни одного расхождения. Страница служебная и закрыта отдельным паролем.

Что изменилось
  • расчёт больше не зависит от того, у кого какая версия файла на руках
  • параметры правятся прямо на странице — программист для этого не нужен
  • ошибка в вводе видна сразу, а не «почему-то не считает»
Сверено с оригиналом
  • 68 разных заказов посчитаны и в Excel, и на странице — цифры совпали во всех
  • обновление от 26 августа перенесено в тот же день
Что поймали по дороге
  • в обновлении нашлась ошибка, из-за которой часть заказов считалась неверно — поймали до того, как по ней посчитали реальный заказ
  • две недоделки в самом Excel-файле выписаны отдельно, чтобы не потерялись
📡

Источников стало больше, сигнал — виднее

Руслан · 9–10 августа
265 каналов вместо 146
  • спорт: было 3 канала, стало 32 — раньше это была слепая зона
  • мемы и юмор — совсем новая тема, 50 каналов
  • музыка: впервые сами артисты, а не только медиа о них
  • из 230 каналов отсеяли 111, чтобы не засорять отчёт мусором
Включён западный блок
  • западные темы доходят до нас с лагом 1–3 недели — это фора по времени, а не паритет
  • тот самый «второй слой рва», о котором спорили на звонке
Видно, как тренд растёт
  • на карточке — рост по часам: «+288% за 12 часов»
  • метка «Всплеск» наконец заработала — до этого не срабатывала вообще
🛠️

Сбор перестал молча падать

Руслан · конец июля — август

Самое неприятное в такой системе — когда она ломается тихо и на сайте просто «вчерашние» данные. За это время поймали и починили несколько таких случаев.

Что чинили
  • ночной сбор TikTok не запускался неделями, и увидеть это было нельзя — починили и сам запуск, и видимость
  • вкладка «Звуки» обнулялась при сбое вместо того, чтобы показать вчерашнее
  • видео США пропускало сбор через день
  • вечерний серверный сбор затирал полные ночные данные урезанными
Доступы
  • дважды продлевали ключ TikTok — сбор вставал на несколько дней
  • плашка «ключ TikTok» показывала неправду о своём состоянии — починили
  • западный радар X снова отбирает темы, а не вываливает всё подряд
Чтобы не повторялось
  • появилась команда «проверь сбор»: за минуту видно, что собирается, что встало и не протух ли доступ
  • весь конвейер сверен по пунктам — что работает, а что только числится работающим
🔌

Внешние сервисы: вернули то, что молчало

Павел · 19 августа
Instagram снова обновляется
  • раздел месяц не обновлялся из-за сбоя доступа к внешнему сервису сбора
  • разобрались — виральные посты снова приходят каждый день
Досье конкурентов — дешевле вдвое
  • собиралось дважды в сутки, хотя данные за день меняются один раз
  • оставили один сбор: содержание то же, расход вдвое меньше
Порядок в задачах
  • список задач отставал от реальности на три выполненные работы — сверили
  • инструкция для агентов противоречила решению включить западный отчёт — убрали противоречие
🛡️

Качество и безопасность кода

Руслан · 29 августа

Проект пишется через ИИ-агентов, и до сих пор за ними никто не смотрел в четыре глаза: что написали — то и поехало на сервер.

Что включили
  • каждое изменение кода проверяется на типовые дыры — около тридцати видов
  • агент видит настоящие ошибки сразу после правки, а не через неделю, когда бот упадёт на сборе
  • из 180 предупреждений 93 оказались ложными по одной причине — разобрали, осталось 87 настоящих
Правила «так у нас не делают»
  • пароли и ключи — только в настройках, не в коде
  • ошибку нельзя проглатывать молча: человек должен увидеть понятное объяснение
  • данные, которые собирает сервер, нельзя затирать со своего компьютера
Что в работе
  • вход на сайт переводим на серверную проверку пароля — снаружи ничего не изменится: та же страница, то же поле
  • отложено сознательно и записано, а не забыто
Что просят доработать · 3 запроса

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

🎤

Бот сам расшифровывает трендовый звук в строчку для принта

высокий приоритет

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

Зачем это им
  • закрывает последний ручной шаг в цепочке «звук → принт»
  • кейс из прошлого интервью: «Ча-ча-ча-саранча» = 100 продаж/день — вся ценность была в одной короткой строчке из трека
Что уже есть
  • модуль «Трендовые звуки TikTok» (п.14) — собирает звуки и качает превью
  • то есть исходник для расшифровки у нас уже лежит, нужен только слой распознавания
Как сделаем честно
  • распознавание музыки (вокал + бит + сленг) — не «бесплатно и точно», ошибки будут
  • MVP: расшифровываем только топ звуков, а не всю ленту
  • помечаем «распознано автоматически, проверьте» — не выдаём за факт
🛒

Полный список товаров WB прямо в карточке — с артикулами

средний приоритет

Запрос дословно: «чтобы не заходить на сам Wildberries». Хочется видеть список наименований прямо в интерфейсе: пробежался глазами → решил «нужно / не нужно» → скопировал артикул → и только тогда пошёл смотреть карточку на WB.

Зачем это им
  • ускоряет решение «брать / не брать» тему
  • в прошлом интервью главный киллер идеи — забитая ниша и авторские права; список наименований = быстрый аудит ниши глазами
Что уже есть
  • метрики WB/Ozon в правой панели (п.7) и парсер маркетплейсов
  • но сейчас конкуренция — это в лучшем случае число товаров, а просят сам список
Как сделаем честно
  • данные WB «холодные» (запаздывают), выдача защищена от ботов
  • MVP: кнопка «Что уже есть на WB» — тянем по запросу, а не заранее, и кэшируем
  • при сбое пишем «не удалось получить», а не показываем пустоту как «конкурентов нет»
𝕏

Углубить Twitter/X до уровня Telegram-модуля

высокий приоритет

Запрос: «чтобы было больше фичей и возможностей» — у X заметно меньше фильтров и настроек, чем у Telegram. И тут же ключевой аргумент команды: именно Twitter лучше всего даёт маркеры — какая новость крутая, залетает и её можно монетизировать. То есть самый сильный по сигналу источник у нас развит слабее всех.

Зачем это им
  • это не новый источник, а усиление самого конверсионного из имеющихся
  • прямой рычаг на качество ежедневной выдачи
Что уже есть
  • страница «Twitter/X» задеплоена 12 июля: AI-отбор мерч-пригодного, фильтр по темам, сила сигнала
  • у Telegram-модуля срезов и сортировок пока ощутимо больше
Что доводим
  • те же срезы и сортировки, что в Telegram
  • фильтры по вовлечённости и скорости роста
  • более жёсткая отсечка шума
Ключевые инсайты
01

Мы синхронны рынку или впереди — это и есть доказательство ценности

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

живёт как история в разговоре
завести метрику: ловить кейсы «подняли тему раньше / вместе с топами»
02

Twitter/X — самый сильный сигнал «что залетит и монетизируется»

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

добавлять новые площадки вширь
углублять X — там, где сигнал сильнее всего
03

Запрос везде один: убрать ручные шаги

Все три пожелания про одно и то же — не выходить из инструмента: не отслушивать звук руками, не ходить на Wildberries, не донастраивать X вручную. Продуктовая линия читается однозначно.

«одно окно для решения о печати»
04

Ценность есть, но она не оцифрована

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

вопрос номер один на следующий созвон
Открытый вопрос — в чём наш ров
🧭

Если маркеры общие — чистой скоростью долго не выигрывать

без ответа

Вопрос поднял Павел прямо на звонке: если мы встаём одновременно с конкурентами по одним и тем же маркерам — значит маркеры публичные, и «увидеть тренд первым» не может быть нашим долгосрочным преимуществом. Он сам оговорился, что может быть не совсем прав — но вопрос стратегический и остался без ответа.

Что это меняет
  • устойчивое преимущество не в том, чтобы увидеть тренд, а в том, чтобы первыми дойти от тренда до готового принта
  • у ручных подборщиков узкое место — скорость дизайнера; именно туда бьют оба запроса (расшифровка звука и список WB)
Второй слой рва
  • опережающая аналитика Запад → РФ: западные тренды доходят до нас с лагом 1–3 недели
  • это единственное, что даёт настоящую фору по времени, а не паритет

Вынести на отдельное обсуждение — это вопрос о позиционировании продукта, его нельзя решить попутно в бэклоге.

Оценка встречи
6/10
Полезный чек-ин, но это обратная связь, а не глубокое интервью. Ценность — в том, что говорят действующие пользователи с деньгами на кону. Слабость — почти ничего не оцифровали.
Что получили
  • валидацию боем от людей, которые реально продают по нашим маркерам
  • три конкретных запроса, все на существующие модули — можно брать в работу сразу
  • явный сигнал по приоритету источников: X важнее остальных
Вопросы на следующий раз
  • «встаём быстрее» — на сколько, в скольких кейсах, сколько это дало в деньгах
  • расшифровка звука — какая точность считается приемлемой и что показывать, если звук инструментальный или не распознался
  • список WB — сколько наименований показывать, нужен ли фильтр по цене и конкуренции, обновлять по кнопке или заранее
  • общие маркеры и наш ров — вынести в отдельный разговор

Запись велась авто-расшифровкой и местами «грязная» — низкоуверенные формулировки в полном разборе помечены отдельно. Сам разбор — docs/interview_feedback_2026-07-22.md, бэклог — п.17 в To-Do-List.md.