既存のバックエンドに信頼性の高い双方向WebSocket・SSE通信を追加するオープンソースのリアルタイムサーバー。
dunglas/mercure
ブラウザやHTTPクライアントへServer-Sent Eventsでリアルタイムにデータを配信するためのプロトコルと、Go製のリファレンスハブです。
代替できる製品:Pusher
- スター
- 5,358
- フォーク
- 348
- 未解決の Issue
- 17
- 最終コミット
- 一昨日
これは何?
Mercureは、ウェブブラウザやその他のHTTPクライアントにデータ更新をプッシュ配信するためのプロトコルです。Web APIで提供されるリソースの非同期・リアルタイムな更新を、リアクティブなWebアプリやモバイルアプリに届けることを目的としています。
このリポジトリには、プロトコルの仕様と、Goで書かれた本番環境向けのリファレンスハブ(サーバー)が含まれています。ハブはAGPLライセンスの無償プログラムとして配布されており、公式のDockerイメージも用意されています。また、Goのライブラリも同梱されているため、別途ハブを動かさなくても、Goアプリケーションがプロトコルを直接実装できます。大規模なトラフィックに対応する管理型のハブも、ホステッドサービスとして提供されています。
このプロトコルはInternet-Draftとしても公開されているため、他の実装でも、このプロトコルを話すクライアントと相互運用できます。
主な機能
- 01Server-Sent Eventsを使って、ブラウザやHTTPクライアントに更新を配信します。
- 02Goで書かれたリファレンスハブを提供し、公式のDockerイメージも用意しています。
- 03アプリケーションにプロトコルを直接組み込めるGoライブラリを提供します。
- 04プロトコル仕様をInternet-Draftとして公開しています。
ユースケース
- バックエンドのAPIリソースが変更されたときに、Webダッシュボードをリアルタイムで更新する。
- 非同期ジョブの進捗や通知を、リアクティブなWebアプリやモバイルアプリに送信する。
- 別のハブを用意せず、Goのサービスにリアルタイムプッシュ機能を直接組み込む。
クイックスタート
- 1
mercure.rocks のスタートガイドを読む
- 2
Docker Hub の公式 Docker イメージ(dunglas/mercure)を使用する
使う前に知っておきたいこと
- Hub はコピーレフトライセンスである AGPL の下でライセンスされており、プロプライエタリ製品での使用が制限される場合があります。
収録されている特集
トピック
よくある質問
- mercure とは?
- ブラウザやHTTPクライアントへServer-Sent Eventsでリアルタイムにデータを配信するためのプロトコルと、Go製のリファレンスハブです。 Mercureは、ウェブブラウザやその他のHTTPクライアントにデータ更新をプッシュ配信するためのプロトコルです。Web APIで提供されるリソースの非同期・リアルタイムな更新を、リアクティブなWebアプリやモバイルアプリに届けることを目的としています。
- mercure は無料で使えますか?ライセンスは?
- mercure は AGPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- mercure は今もメンテナンスされていますか?
- 活発にメンテナンス中。mercure の最終コミットは 2026年11月4日 です。
- mercure は何に使えますか?
- バックエンドのAPIリソースが変更されたときに、Webダッシュボードをリアルタイムで更新する。 非同期ジョブの進捗や通知を、リアクティブなWebアプリやモバイルアプリに送信する。 別のハブを用意せず、Goのサービスにリアルタイムプッシュ機能を直接組み込む。
- mercure のインストール方法は?
- mercure.rocks のスタートガイドを読む Docker Hub の公式 Docker イメージ(dunglas/mercure)を使用する
- mercure はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/dunglas/mercure
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
JSDocコメントからOpenAPI仕様を生成し、LLMレスポンスのSSEストリーミングを標準搭載した、型安全なWeb API構築用JavaScriptフレームワークです。
WebSocket、SSE、HTTPストリーミング、GRPC、WebTransportでユーザーにメッセージを配信する、セルフホスト型・言語非依存のリアルタイムPUB/SUBメッセージングサーバー。
スキーマから権限対応のJSON:API、GraphQL、リアルタイム、ファイル、オートメーション、連携用エンドポイントを生成する、セルフホスト型のGoアプリケーションサーバー。
ホスト型データストア Content Lake を利用し、構造化コンテンツのワークスペースを設定できる、オープンソースのReactベースのヘッドレスCMS Studio。
スキーマファーストのGraphQL定義から、型安全なGraphQLサーバーコードを生成するGoライブラリ。