Вилка проекта от 100к до 200к
Сумма за проект зависит от опыта специалиста, идеально нужен кандидат который делал подобные плагины.
# 1. Цель проекта
Создать автономное (без внешних источников, кроме API Wildberries, оплаты через ЮKassa и опциональной нейросети GigaChat) расширение для Chrome и Яндекс.Браузера, которое:
* собирает и визуализирует статистику по рекламным кампаниям WB;
* показывает выдачу (органическую и рекламную) по запросам/товарам;
* отображает ключевые метрики и заказы из «Джема» (если функция включена);
* работает поверх интерфейса кабинета WB в виде настраиваемого overlay;
* имеет модуль автоминусации и автобиддера (ручной и нейро-режим);
* поддерживает оплату подписки через ЮKassa;
* устанавливается и настраивается «под ключ».
# 2. Целевая среда и совместимость
* Chromium-based: Google Chrome (актуальная LTS-ветка), Яндекс.Браузер (актуальная версия).
* Manifest V3 обязательный.
* ОС: Windows 10+, macOS 12+, Linux (актуальные дистрибутивы).
* Разрешения расширения: activeTab, scripting, storage, alarms, tabs, notifications, offscreen, declarativeNetRequest (минимально необходимые), доступ к доменам WB кабинета и API WB (список доменов будет уточнён).
* Локализация: ru-RU (возможность добавить en).
# 3. Архитектура
## 3.1. Клиент расширения
* Background Service Worker (MV3): планировщик задач, веб-запросы к WB API/бэкенду (если требуется), биллинг-статусы, обновления.
* Content scripts: внедрение overlay и сбор данных из DOM на страницах кабинета.
* Options page (панель настроек) и Popup (быстрые действия).
* UI-стек: TypeScript + React (или Preact) + Vite, TailwindCSS. Графики: Recharts или Apache ECharts.
* Локальное хранилище: chrome.storage.local + IndexedDB (кэш метрик и снимков выдачи).
* Межкомпонентная связь: chrome.runtime messaging.
## 3.2. Бэкенд (минимальный, при необходимости)
* Назначение: биллинг-вебхуки ЮKassa, управление лицензиями/подписками, прокси к GigaChat (если нельзя вызывать напрямую из расширения), выпуск ключей/токенов.
* Технологии: Node.js (NestJS/Express), PostgreSQL, Redis (кэш), Docker.
* Безопасность: HTTPS, JWT для сессий устройств, rate limiting, CORS (на домены WB запрещено, кроме контент-скриптов).
* Возможный режим «без сервера»: если ЮKassa и GigaChat допускают прямую работу из клиента — всё равно нужен end-point для вебхуков оплаты.
# 4. Доступы и безопасность
* Ключи WB API вводит пользователь вручную в настройках. Хранение локально, зашифровано (WebCrypto AES-GCM, ключ derivation через PBKDF2 на основе локального PIN пользователя).
* Токены GigaChat (если требуются) — через бэкенд-прокси или локально с теми же принципами.
* Доступ к API WB — строго по документированным эндпоинтам и лимитам; экспоненциальный backoff и очереди запросов.
* Логи только анонимные и агрегированные (опционально выключаемые пользователем). Данные рекламных кампаний не отправлять на внешний сервер без явного согласия.
* Соответствие GDPR (особенно для EU пользователей): политика конфиденциальности, механизм удаления данных, экспорт.
# 5. Основные функции
## 5.1. Overlay-аналитика (основной UI)
* Отображение поверх страниц кабинета WB (инъекция overlay-контейнера).
* Перетаскиваемые / фиксируемые панели, кнопка «свернуть/развернуть», запоминание макета.
* Виджеты:
* Сводка аккаунта: расходы, показы, клики, CTR, CPC, CPA, CR, конверсии, ROAS/ROMI, выручка.
* Таблицы по кампаниям/группам/ключам: сортировка, фильтры, поиск, пагинация.
* Графики за период: расходы, показы, клики, заказы, выручка, ROAS.
* «Заказы из Джема»: число и список заказов, атрибуция к кампаниям/ключам (при включенной функции и наличии данных).
* Рекламные позиции и органика по запросам (см. 5.2).
* Экспорт: CSV/XLSX/PNG (скрин-графиков).
* Быстрые действия: «минус-слова», «повысить/понизить ставки», «пауза/возобновить кампанию».
## 5.2. Мониторинг выдачи (органика и реклама)
* По выбранным ключам/артикулам — получение текущих рекламных позиций и органических мест в выдаче.
* Снимок выдачи с метаданными: запрос, дата/время, позиция, тип (organic/ads), страница, видимость.
* История изменений позиции во времени (мини-спарклайн в таблице).
* Расписание автосборов (например, каждые N часов) с ограничением частоты, чтобы не нарушать правила WB.
## 5.3. Метрики и отчёты
* Дашборд по периодам: «Сегодня», «Вчера», «7 дней», «30 дней», «Произвольный».
* Разрезы: кампании → группы → ключевые фразы → места размещения (если применимо).
* Атрибуция: модель по умолчанию «последний клик» (настраиваемо, если данные позволяют).
* Преднастроенные отчёты: «Эффективность кампаний», «Срез по ключам», «Срез по поисковым запросам», «Нецелевые запросы», «Отчёт по Джему».
* Сохранённые отчёты и быстрые пресеты пользователя.
Полное описание ТЗ в файле прикрепленном к заданию
Опубликован 25.08.2025 в 20:53