Открытый realtime-сервер, который добавляет существующим бэкендам надёжную двустороннюю связь по WebSocket и SSE.
dunglas/mercure
Протокол и эталонный хаб на Go для доставки обновлений в реальном времени браузерам и HTTP-клиентам через Server-Sent Events.
Open source альтернатива:Pusher
- Звёзды
- 5,358
- Форки
- 348
- Открытые issues
- 17
- Последний коммит
- 3 дня назад
Что это?
Mercure — это протокол для доставки обновлений данных веб-браузерам и другим HTTP-клиентам. Он предназначен для публикации асинхронных обновлений ресурсов, предоставляемых через веб-API, в том числе в реальном времени, для реактивных веб- и мобильных приложений.
В этом репозитории находятся спецификация протокола и готовый к промышленному использованию эталонный хаб на Go, который выполняет роль сервера. Хаб распространяется как бесплатная программа под лицензией AGPL и доступен в официальном образе Docker. В комплект также входит библиотека Go, позволяющая любому приложению на Go реализовать протокол напрямую, без отдельного хаба. Управляемая версия хаба с высокой масштабируемостью предлагается как хостинговый сервис.
Протокол также опубликован как Internet-Draft, чтобы другие реализации могли взаимодействовать с клиентами, поддерживающими его.
Ключевые возможности
- 01Отправляет обновления браузерам и HTTP-клиентам через Server-Sent Events.
- 02В комплект входит эталонный хаб на Go с официальным образом Docker.
- 03Предоставляет библиотеку Go для непосредственного встраивания протокола в приложение.
- 04Публикует спецификацию протокола в формате Internet-Draft.
Сценарии использования
- Обновление веб-панели в реальном времени при изменении ресурсов бэкенд-API.
- Передача прогресса асинхронных задач или уведомлений в реактивные веб- и мобильные приложения.
- Встраивание отправки обновлений в реальном времени непосредственно в Go-сервис без отдельного хаба.
Быстрый старт
- 1
Прочитайте руководство для начала работы на mercure.rocks
- 2
Используйте официальный Docker-образ из Docker Hub (dunglas/mercure)
Что важно знать
- Hub распространяется по лицензии AGPL — лицензии с авторским левом, которая может ограничивать его использование в проприетарных продуктах.
В подборках
Темы
Частые вопросы
- Что такое mercure?
- Протокол и эталонный хаб на Go для доставки обновлений в реальном времени браузерам и HTTP-клиентам через Server-Sent Events. Mercure — это протокол для доставки обновлений данных веб-браузерам и другим HTTP-клиентам. Он предназначен для публикации асинхронных обновлений ресурсов, предоставляемых через веб-API, в том числе в реальном времени, для реактивных веб- и мобильных приложений.
- mercure можно использовать бесплатно? Какая у него лицензия?
- mercure распространяется с открытым исходным кодом под лицензией AGPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- mercure всё ещё поддерживается?
- Активно поддерживается. Последний коммит в mercure — 4 нояб. 2026 г..
- Для чего можно использовать mercure?
- Обновление веб-панели в реальном времени при изменении ресурсов бэкенд-API. Передача прогресса асинхронных задач или уведомлений в реактивные веб- и мобильные приложения. Встраивание отправки обновлений в реальном времени непосредственно в Go-сервис без отдельного хаба.
- Как установить mercure?
- Прочитайте руководство для начала работы на mercure.rocks Используйте официальный Docker-образ из Docker Hub (dunglas/mercure)
- Где скачать mercure?
- Исходный код и инструкции по установке — на GitHub: https://github.com/dunglas/mercure
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
JavaScript-фреймворк для создания типобезопасных веб-API: генерирует OpenAPI-спецификации из комментариев JSDoc и поддерживает потоковую передачу ответов LLM через SSE.
Независимый от языка self-hosted сервер обмена сообщениями PUB/SUB в реальном времени, который отправляет их пользователям через WebSocket, SSE, HTTP-streaming, GRPC и WebTransport.
Автономно разворачиваемый сервер приложений на Go, который преобразует схему в JSON:API, GraphQL, realtime, файловые, автоматизационные и интеграционные эндпоинты с учетом прав доступа.
Headless CMS Studio с открытым исходным кодом на React для настройки рабочих пространств со структурированным контентом в hosted-хранилище Content Lake.
Библиотека для Go, генерирующая типобезопасный код GraphQL-сервера на основе схемы GraphQL.