Все проекты

CRM и операционный центр

CRM на Vue 3 + webedge-db: лиды из всех источников, затем триаж, назначение и follow-up в одном пайплайне.

Vue 3webedge-dbIntegrations
Скриншот WebEdge CRMDev-story
01

Задача

Лиды приходят из очень разных мест — партнёрские API, email-алерты, RSS/sitemap, спарсенные объявления, таблицы — и оказываются разбросаны вместо единого потока.

02

Что делали

CRM на webedge-db, принимающий лиды через восемь типов источников (официальный API, парсер email-алертов, RSS/Atom/sitemap, HTML-фетч, профиль браузера Playwright, webhooks, импорт CSV/Excel/Sheets, браузерное расширение), с каталогом источников, сохранёнными профилями поиска, инбоксом лидов и здоровьем каждого источника. Вырос из радара объявлений недвижимости в общий инструмент сбора.

03

Результат

Новые источники добавляются как настраиваемые коннекторы; всё падает в один real-time инбокс со здоровьем каждого источника, а затем drag-and-drop пайплайн со скорингом-триажем лидов, слиянием дублей, массовыми CSV-действиями и авто-напоминаниями follow-up ведёт каждый лид дальше.

Dev-story статья

CRM и операционный центр: как создавался проект

Всё началось с монитора одного портала: браузерный воркер пробивался сквозь антибот-челлендж, парсил один литовский сайт недвижимости и слал новые находки на почту. Беда была в том, что каждый новый источник лидов означал ещё один разовый скрипт и ещё один почтовый ящик. Поэтому проект развернулся внутрь и стал настоящей CRM: одно место, куда стекаются лиды из множества типов источников, получают оценку и обрабатываются, а экран обновляется вживую, а не после передеплоя.

Разделы

05

Модули

05

Стек

Vue 3 + webedge-db

01

Почему появился проект

Лиды приходят из очень разных мест — партнёрские API, email-алерты, RSS/sitemap, спарсенные объявления, таблицы — и оказываются разбросаны вместо единого потока.

Всё началось с монитора одного портала: браузерный воркер пробивался сквозь антибот-челлендж, парсил один литовский сайт недвижимости и слал новые находки на почту. Беда была в том, что каждый новый источник лидов означал ещё один разовый скрипт и ещё один почтовый ящик. Поэтому проект развернулся внутрь и стал настоящей CRM: одно место, куда стекаются лиды из множества типов источников, получают оценку и обрабатываются, а экран обновляется вживую, а не после передеплоя.

02

Что было создано

CRM на webedge-db, принимающий лиды через восемь типов источников (официальный API, парсер email-алертов, RSS/Atom/sitemap, HTML-фетч, профиль браузера Playwright, webhooks, импорт CSV/Excel/Sheets, браузерное расширение), с каталогом источников, сохранёнными профилями поиска, инбоксом лидов и здоровьем каждого источника. Вырос из радара объявлений недвижимости в общий инструмент сбора.

Рабочее пространство на Vue 3 + Tailwind поверх реактивного бэкенда, где каталог источников моделирует двенадцать режимов сбора: партнёрские API, парсеры email-оповещений, RSS/sitemap-ленты, краулеры публичного HTML, браузерный профиль Playwright с сохранёнными куками, вебхуки, импорт CSV/Sheets и группы Telegram/Messenger. Сырые события приходят через HTTP-эндпоинты приёма, защищённые секретом, превращаются в лиды без дублей и появляются на drag-drop доске воронки. Общая очередь воркеров запускает подключаемые HTML-, RSS- и API-коннекторы, так что новый источник — это профиль поиска, а не новая кодовая база.

03

Основные модули и путь пользователя

M01

Каталог источников + приём: двенадцать смоделированных режимов, питающих два HTTP-эндпоинта (входящая почта, общий ingest) под общим секретом, плюс очередь воркеров с подключаемыми коннекторами публичного HTML, RSS/Atom и JSON-API

M02

Drag-drop доска воронки с настраиваемыми стадиями, статистикой нагрузки, выдвижной панелью контактов, массовыми действиями и импортом/экспортом CSV

M03

Умная оценка триажа лидов вместе с дедупликацией по точному и кросс-источниковому отпечатку, слиянием дублей лидов и нормализацией записи телефонов и email

M04

Движок фоллоу-апов: назначение владельца, журнал активности и email-напоминания, намеренно ограниченные только недавно наступившими задачами, чтобы ящик оставался осмысленным

M05

Automation Studio: конструктор рецептов (триггеры lead_created/email_received/manual, фильтры по источнику и цене, действия — задать приоритет, назначить владельца, создать задачу, поставить задание в очередь), логирующий результат, длительность и ошибки каждого запуска

04

Архитектура и технологические решения

Сделано на Vue 3, webedge-db, Integrations.

SPA на Vue 3 + Tailwind, подписанная на реактивный бэкенд, чьи TypeScript-мутации и запросы отвечают за дедупликацию, историю цен и upsert-ы; вход работает через Better Auth OTP под контекстом бэкенда, а свободный текст из чат-источников разбирает Claude-экстрактор.

05

Результат и выводы

Новые источники добавляются как настраиваемые коннекторы; всё падает в один real-time инбокс со здоровьем каждого источника, а затем drag-and-drop пайплайн со скорингом-триажем лидов, слиянием дублей, массовыми CSV-действиями и авто-напоминаниями follow-up ведёт каждый лид дальше.

То, что было email-радаром одного портала, теперь рабочее пространство сбора из многих источников, где новый источник лидов — это сохранённый профиль поиска, а не новый скрипт; честно говоря, всё ещё инструмент одной команды, но полноценная CRM, а не скрапер с рассылкой.

Читать дальше

Эти проекты близки по техническим или продуктовым решениям и показывают, как тот же принцип работает в другом контексте.

Есть похожая идея?

Обсудить проект