TGViewer
Жабаскрипт (веде Віктор Турський) Жабаскрипт (веде Віктор Турський) @jabascript · 4.72K subscribers
Post #75 3.15K
Yet another JSON RPC Library

Что может быть проще JSON-RPC? Мы делаем проект по автоматизации умного дома и нам нужна была JSON RPC библиотека, но в результате оказалось, что ничего подходящего в экосистеме NodeJS найти нельзя. Основная проблема в архитектуре этих библиотек.

JSON RPC это один из самых простых вариантов RPC, с минималистичной и простой спекой, протокол не зависит от транспорта. Хотелось найти что-то, что следует этим же идеям.

Нам нужно было:
✅ Независимость от транспорта (WebSockets, MQTT, WebRTC, HTTP etc).
✅ Динамическая регистрация транспортов.
✅ Двунаправленная коммуникация через один канал.
✅ Современный API.
✅ Сервер и клиент, которые могут работать и в браузере.
✅ Простую реализацию, идеально, чтобы ядро без внешних зависимостей.
✅ Простой способ добавлять новые транспорты (все сложные части должны быть абстрагированы).
✅ Простой способ тестировать новые транспорты.

В итоге, более года назад появился Mole-RPC, который решил все эти проблемы. Могу сказать, что выстроить правильные абстракции часто бывает не просто и не всегда получается с первого раза.

Доклад про это на KyivJS - https://www.youtube.com/watch?v=84Y5n32tX5E.

В докладе я рассказал про задачу, показал проблемы ряда популярных JSON RPC библиотек и постарался продемонстрировать, как мы подходим к проектированию и как выстраивать абстракции.

Рекомендую к просмотру всем, кто пишет свои библиотеки 🙂
More from @jabascript
  1. Oct 9, 2026Hey team! Quick one before the weekend (життєво 🙈): https://www.youtube.com/watch?v=3TNpO…
  2. Sep 30, 2026Ну шо... https://youtu.be/I5_D15gCDDQ
  3. Sep 29, 2026🏎️🏁Забирайте трофеї й знову нові тижневі челенджі 🏎️🏁
  4. Sep 26, 2026"Найкраща мова програмування - англійська" DHH Зараз багатьом підгорає від останньої допов…
  5. Sep 22, 2026Забирайте трофеї й знову нові тижневі челенджі 🏎️🏁
  6. Sep 14, 2026Втомилися чекати на дашборди? Не знаєте, як тестувати AI-агентів? Або цікавитесь, як працю…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →