Skip to content

HpPpL/omnibridge

Repository files navigation

OmniBridge

Омниканальный визуальный конструктор для миграции входящих сообщений из одних платформ (ВКонтакте, Instagram, WhatsApp…) в другие (Telegram, Slack, Discord).

Интерфейс — блочно-графовый: слева блоки-источники, справа блоки-назначения, между ними протягиваются связи. Клик по блоку открывает панель настройки интеграции.

схема

Стек

  • Frontend (готово, MVP): React 18 + TypeScript + Vite, без внешних UI-зависимостей.
  • Backend (план): см. раздел «Дальше».

Запуск

npm install
npm run dev      # http://localhost:5173

Сборка прод-версии: npm run build && npm run preview.

Структура

src/
  types.ts            # доменные типы: FlowNode, Connection, PlatformMeta
  platforms.ts        # каталог платформ + поля настройки (точка расширения)
  App.tsx             # состояние канваса, расчёт связей
  components/
    NodeCard.tsx      # карточка блока
    ConfigDrawer.tsx  # боковая панель настройки интеграции
    Connections.tsx   # SVG-слой со связями
    AddMenu.tsx       # добавление источника/назначения

Как добавить новую платформу

  1. Добавь запись в PLATFORMS (src/platforms.ts): id, цвет, роли (source / destination), список полей доступа.
  2. Платформа сразу появляется в меню «+ Добавить» нужной колонки.
  3. (Backend) Реализуй адаптер — см. ниже.

Дальше (backend, ещё не реализован)

Идея — нормализованная модель сообщения посередине:

Источник ──▶ UnifiedMessage ──▶ Назначение
(poll/webhook)   (общий формат)    (адаптер отправки)
  • sources/* — поллеры и webhook-приёмники (VK Long Poll, Meta Graph webhooks…).
  • core — нормализация в UnifiedMessage (автор, текст, вложения, время), роутинг по связям, очередь/ретраи.
  • destinations/* — адаптеры отправки (Telegram Bot API, Slack/Discord webhooks…).
  • Секреты блоков (config) хранить в БД зашифрованными, на фронт не отдавать.

Статус

🟢 Прототип интерфейса · 🟡 Бэкенд-адаптеры — в планах

About

Омниканальный визуальный конструктор миграции входящих сообщений из ВКонтакте/Instagram в Telegram, Slack, Discord. React + TypeScript + Vite.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors