1SELLER · кейсбук Обсудить проект
Подготовлено персонально для Елены

Елена, посмотрите, что мы уже построили

Больше 20 продуктов для маркетплейсов, искусственного интеллекта и веба. Большинство уже работает в проде — и в первую очередь на нас самих. Значит, сработает и для вашего бизнеса.

Под каждой карточкой есть блок «Под капотом» — технические детали. А по каждому проекту есть отдельный детальный кейс (раздел «Кейсы», готов к печати в PDF).

20+
продуктов и кейсов
10+
работают в проде
3
маркетплейса: Ozon · WB · Яндекс
2
сданных клиентских проекта
01 — Направление

Аналитика маркетплейсов и финансы

Глубокая работа с API Ozon, Wildberries и Яндекс.Маркета. Считаем прибыль до копейки — ровно как в личном кабинете, без «размазывания» и оценок.

● Флагман · в проде

Dashiki — аналитика селлера

Десктоп-приложение, которое собирает данные Ozon, WB и Яндекс.Маркета в одну зашифрованную базу и строит дашборды: реальная прибыль, юнит-экономика, финансы, реклама по каждому товару, воронка продаж.

Результат: единая картина по 3 маркетплейсам, точные цифры «как в ЛК» — то, что сами маркетплейсы не показывают.

Electron 33React 18TypeScriptSQLCipherECharts
Под капотом
Стек
  • Electron 33 + electron-vite + React 18 + TypeScript + Zustand + ECharts + Tailwind
  • Хранилище — better-sqlite3-multiple-ciphers (SQLCipher AES-256, нативный)
Архитектура
  • Data-warehouse-first: ETL тянет API → локальная зашифрованная БД → сервисы → UI. При отрисовке никаких live-запросов к API — только чтение из БД
  • Реестр ETL-источников с приоритетами (HEAVINESS) и авто-синком по магазинам
Внешние API
  • Ozon Seller + Ozon Performance (асинхронные отчёты), WB (Statistics / Promotion / Content / Analytics), Яндекс.Маркет Partner
Ключевые решения
  • Точная реклама per-SKU через async Performance reports: submit → poll → download ZIP → parse CSV (3 формата отчётов)
  • Квота-трекер под лимит Performance API 1000 отчётов/сутки (rolling 24h), переживает рестарты приложения
  • Прибыль считается по cash-flow из финансовых транзакций — сходится с дашбордом 1:1
  • Наследование себестоимости между Ozon/WB/Яндексом по общему артикулу (зачаток PIM)
  • Data Protection Policy: БД = кэш над API, защищённые таблицы, никаких удалений данных
Инфра
  • GitHub Actions по тегу v* собирает Win + Mac → авто-релиз. Логи через winston, секреты в Electron safeStorage (DPAPI)
  • Боевая проверка на аккаунте MOYORY: ~17k заказов, ~79k строк отчётов WB
Инструмент

WB-Паук — выгрузки из Wildberries

Быстрые выгрузки любых данных из API Wildberries прямо в Excel — без захода в личный кабинет.

Результат: 27 016 карточек товара выгружено за один прогон.

Python 3.12requestsopenpyxl
Под капотом
Архитектура
  • Принцип «один скрипт = один отчёт»: каждый самодостаточен, без общего SDK (преждевременная абстракция не нужна)
  • Токены WB живут только в переменных окружения сессии — никаких .env и секретов в коде
Использованные эндпоинты
  • /adv/v3/fullstats — статистика РК (показы/клики/CTR/CPC/расход/CR)
  • /content/v2/get/cards/list — выгрузка карточек, курсор-пагинация по 100
  • cards/update + cards/moveNm — смена бренда и склейка/расклейка карточек
Результат прогона
  • 27 016 карточек / 6236 imtID / 1686 склеек → один Excel
SaaS · в разработке

Dashiki-Store — облако для интернет-магазинов

Облачная версия аналитики для магазинов на собственных движках (Яндекс KIT и др.): заказы, покупатели, юнит-экономика, лояльность.

Node.jsFastifyPostgres 16Drizzle
Под капотом
Стек
  • Node.js + TypeScript + Fastify + Drizzle ORM; Postgres 16; React 18 + Vite SPA; Caddy (auto-TLS); Docker compose + GitHub Actions
Архитектура
  • Cloud-first push-receiver: Яндекс KIT работает reverse-style — сам пушит события в наш публичный HTTPS-эндпоинт
  • Multi-tenant: tenant = аккаунт селлера, один tenant → N магазинов KIT; изоляция через tenant_id + RLS
Почему отдельный продукт
  • У интернет-магазинов другая доменная модель, чем у маркетплейсов: нет МП-комиссий, есть эквайринг и своя доставка — мешать в одну кодовую базу с десктопным Dashiki нет смысла
Статус
  • Архитектура зафиксирована, старт разработки запланирован
02 — Направление

AI-платформа и инструменты

Не демки, а боевые пайплайны. Своя инфраструктура доступа к нейросетям и продукты поверх неё.

Фундамент платформы

ToProuter — все нейросети по одной подписке

Единая точка доступа к Claude, GPT и другим моделям. Оптовая закупка токенов и ротация ключей снижают себестоимость в разы. На этом фундаменте держатся все наши AI-продукты.

LLM-роутингClaudeGPTбиллинг токенов
Под капотом
Роль в экосистеме
  • Фундаментальный слой: ToProuter → TopCode / Программа лояльности / Carousel. Все LLM-вызовы продуктов идут через него
Экономическая модель
  • Оптовая закупка токенов (через AnyPay) → себестоимость в разы ниже розничных подписок Claude + ChatGPT
  • Ротация ключей по исчерпанию: запросы не падают, когда один ключ выработан
Продуктовая идея
  • Клиент получает «всё в одном за небольшие деньги» вместо $200+/мес за каждый сервис отдельно
Инструмент

TopCode

AI-помощник в редакторе: общается, правит файлы и пишет статьи. Работает через ToProuter.

Под капотом
Слой
  • Инструмент между фундаментом (ToProuter) и продуктами (Программа лояльности). Форм-фактор — расширение редактора и/или CMD-запуск
Готово / в работе
  • «Писатель статей» уже работает
  • Стабилизация цикла «посмотри файл → отредактируй файл» без лишних итераций и расхода токенов
● в проде

Carousel Generator

Генератор карусельных постов: Claude пишет план, Gemini рисует слайды в едином стиле бренда.

Результат: пост из 1–6 слайдов за минуты.

Под капотом
Стек
  • Python 3.11 + Streamlit (UI) + Click (CLI) + Anthropic SDK (Claude) + Google GenAI (Gemini 3 Pro Image) + tenacity + pytest
Пайплайн
  • тема + framework → Claude (JSON-план по слайдам) → Gemini (PNG-слайды) → output/timestamp
Ключевое решение — борьба с drift
  • Style Contract: фиксация типографики / цвета / раскладки между слайдами
  • Anti-drift: предыдущий слайд подаётся как 3-я референс-картинка начиная со слайда 3
Инфра
  • pm2 + nginx + certbot, GitHub Actions deploy, прод на carousel.deshiki.ru
● в проде

SEO-движок статей

Массовая генерация SEO-статей с картинками и проверкой уникальности текста — для роста органического трафика.

Под капотом
Пайплайн на ключ
  • queued → writing → validating → [repairing] → seo → images → assembling → draft/published. Текст — Claude, картинки — Gemini, валидация — Zod, до 2 авто-починок
Чекер уникальности
  • Word-шинглы (5-граммы, FNV-1a) → поиск источников (Yandex Search / Google CSE / Bing) → фетч страниц (Readability, кэш 7 дней) → overlap → originality_percent
Где живёт
  • Часть SSR-блога 1seller (см. направление «Веб»)
03 — Направление

Веб-платформы и сайты под ключ

От сложных SaaS-платформ до клиентских сайтов с CMS, хостингом и передачей в собственность.

● Продукт · в проде

TopReels — биржа UGC-креаторов

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

Результат: 45 креаторов и 1080+ снятых видео на площадке.

Next.js 15React 19DrizzlePostgres / SupabaseMinIO S3Socket.io
Под капотом
Стек
  • Next.js 15 (App Router, Server Actions) + React 19 + Tailwind + shadcn/ui + TanStack Query; Drizzle ORM (мигрировано с Prisma); Postgres (Supabase) + Redis; MinIO S3; Socket.io в отдельном контейнере; NextAuth; Resend; монорепо на pnpm + Turborepo
Архитектура
  • Монорепо: apps/web + apps/ws-server + packages/{db,queue,shared}. 3 роли BRAND / CREATOR / ADMIN, бренд-команды с приглашениями
Доменные инварианты
  • Lifecycle сабмишена: PENDING_REVIEW → APPROVED → PAID (+ NEEDS_REVISION / REJECTED), блокировка под воркера через lockedBy/lockedUntil
  • Кошелёк: available_balance == Σ(reward где status=APPROVED) — всегда сходится с «к оплате» у бренда
  • Грейды по количеству видео (3 уровня), пятничные выплаты единой операцией
  • Gate новичков: оферта → обучение (курс ≥80% + квиз ≥70% + тест-видео) → аппрув куратора. Enforced и в навигации, и в server actions
Подсистемы
  • Learning Center: отдельная схема learn, плеер на hls.js (HLS-ладдер 240/480/720)
  • REST API для phone-farm: Bearer-токены (api_keys), lock сабмишена на 1 час, идемпотентные публикации
Инфра
  • Docker compose (web/ws/minio), nginx → MinIO /media, GitHub Actions, миграции inline-SQL (IF NOT EXISTS)
● в проде

LMS обучения

Платформа курсов с платной воронкой и авто-зачислением студента сразу после оплаты.

Под капотом
Стек
  • Next.js 16 (App Router) + Prisma 5 (SQLite) + NextAuth; модули / уроки / типы вопросов / SRS
Платная воронка
  • Admin enroll API POST /api/admin/topclaude/enroll — Bearer shared-secret, идемпотентность по orderId
  • Flow: оплата (Robokassa) → webhook → enroll → set-password → редирект в курс; гейтинг платного курса по записи enrollment
Инфра
  • Деплой через GitHub Actions (SSH на VPS), PM2-процесс, прод на learn.1seller.ru
● в проде

Блог 1seller

SSR-блог с AI-генерацией статей, проверкой уникальности и геймификацией читателей.

Под капотом
Стек
  • Node + tsx + Vike (vike-react) поверх Vite 6, React 19 (SSR, файловый роутинг) + Express; Supabase (Postgres + RLS); Anthropic + Gemini через SOCKS-прокси; Resend; OAuth читателей Yandex/Google
Подсистемы
  • Публичный SSR-блог под anon-клиентом Supabase
  • Боковые sticky-виджеты: 3-колоночный грид ≥1280px, на мобиле — инлайн между абзацами (оба варианта в SSR-DOM, переключение через CSS)
  • Админка с ролями editor / writer; SEO-движок (см. направление AI); чекер уникальности
  • Геймификация «Зеньки»: леджер баллов, heartbeat-трекинг чтения с анти-бот проверками, ЛК читателя
Инфра
  • PM2 :3002, nginx catch-all всего домена 1seller.ru (CRA владеет только /), deploy через scp
★ Клиентский кейс

EHWAZ Logistic

Корпоративный сайт логистической компании под ключ: сайт + CMS + хостинг + SSL.

Результат: сдан, работает, передан клиенту в собственность.

React 18Vite 6Payload CMSDocker
Под капотом
Стек
  • Фронт: React 18 + TypeScript + Vite 6 + Tailwind v4 + shadcn/ui + Framer Motion. Бэк: Payload CMS + MongoDB 7. Docker compose (mongo / payload / web), nginx:alpine + certbot
Особенность деплоя
  • Приватный репозиторий → заливка tarball на VPS вместо clone; CMS-образ тянется с Docker Hub
Передача клиенту (handover)
  • Самодостаточный архив: docker save образа CMS + mongodump + source + compose + RESTORE.md — клиент может развернуть идентичную копию на любом сервере без доступа к нашему GitHub/Docker Hub. Сдано в режиме sole ownership
★ Клиентский кейс

glavcentr.ru

Лендинг юридической компании с приёмом заявок в Telegram и соблюдением рекламных требований ФАС.

Next.js 16DockerPostgres
Под капотом
Стек
  • Next.js 16 + leads-service + vk-amo-bridge, Docker compose, Postgres
Приём заявок
  • Цепочка сайт /api/leads → leads-service → Telegram (несколько получателей-админов), ответ sent / partial / failed
Комплаенс
  • SEO-движок с валидацией рекламы по требованиям ФАС (запрещённые формулировки + обязательный дисклеймер) — content-rules.ts
Деплой
  • Push → GitHub Actions → SSH на сервер → docker compose build/up + health-check. Локальный npm run build перед пушем как страховка
● в проде

Лендинги Kit / 1seller.ru

Посадочные агентства и продуктов Яндекс KIT с собственной дизайн-системой.

Под капотом
Архитектура
  • Один репозиторий обслуживает два домена: 1seller.ru (CRA pre-built) и kit.1seller.ru (живой Next.js на VPS под pm2)
  • Новые посадочные — статичный HTML + Tailwind CDN, деплой отдельным SCP-job на свою папку (чтобы не блокироваться миграцией Next)
CI/CD
  • GitHub Actions, push в main → 3 параллельных job'а с авто-детектом nginx-конфига по server_name
Дизайн-система
  • «Мульти-Бриллиант»: cyan/violet/pink/gold градиенты, карточки radius 24px, шрифт Inter
04 — Направление

Креатив и вау-сайты

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

R&D · креатив

Scroll-сайты

Сайты, где видео разворачивается кадр за кадром по мере прокрутки. Собственный движок.

Под капотом
Движок
  • Vanilla HTML + canvas: кадры видео рисуются по прогрессу скролла, scroll-jacking по блокам, офферы по блокам, WebGL-«вода»
Пайплайн
  • Видео → ffmpeg нарезает кадры .webp → блоки по таймкодам + текст-оверлеи. Тяжёлые кадры в git не кладутся — регенерируются из исходника
Пример
  • Сайт PANAEV: исходник 4K, ~3340 кадров, 9 блоков
R&D

Detailing-эпик

Scroll-сайт детейлинг-центра: авто разбирается и собирается по прокрутке, видео сгенерировано нейросетью.

Под капотом
Техника
  • Scrollytelling на нативном скролле: каждый видео-блок — секция с position:sticky, кадры скрабятся прогрессом
  • Scroll-driven прозрачность блоков (появление/исчезание по скроллу, без fade-to-black)
Генерация видео
  • Через Higgsfield (Seedance / Kling) с управляемыми пресетами камеры (Orbit / Dolly / 360) для плавного скраба; 4K-апскейл финального ролика
R&D

WebGL вау-сайты

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

Под капотом
Технология
  • WebGL-движок с рантайм-сборкой ассетов (геометрия + ktx2-текстуры подгружаются по сцен-манифесту)
  • Текст рендерится прямо в WebGL через MSDF-атлас, а не CSS
Наша экспертиза — кириллица в WebGL
  • Собственный MSDF-атлас (Rubik через msdf-bmfont) — иммерсивные сайты уровня мировых студий начинают полноценно работать на русском

Стек и компетенции

Frontend

ReactNext.jsViteTailwind

Backend

Node.jsFastifyPythonPostgreSQL

AI

ClaudeGeminiHiggsfield

Инфра

DockerSupabaseGitHub Actions

Маркетплейсы

Ozon APIWB APIЯндекс.Маркет

Как мы работаем

  1. 01

    Бриф и цель

    Разбираем задачу и считаем, какой результат в деньгах вы хотите получить.

  2. 02

    Прототип

    Показываем макет/прототип до разработки — вы видите результат заранее.

  3. 03

    Разработка

    Собираем продукт на боевом стеке. Регулярные демо вместо «чёрного ящика».

  4. 04

    Запуск и передача

    Деплой, документация и передача в собственность — как с EHWAZ Logistic.

Елена, обсудим ваш проект?

Покажем релевантные кейсы детально, оценим сроки и стоимость под вашу задачу.

Юрий Вдовин — директор агентства «Первый Селлер»

info@1seller.ru · Екатеринбург, ул. Малышева, 51