Mercure
An open, easy, fast, reliable, and battery-efficient solution for real-time communications. Push data updates to web browsers and other HTTP clients using Server-Sent Events (SSE).
Getting Started
- Visit your domain -- the Mercure Hub welcome page appears
- Configure JWT keys -- use the Publisher and Subscriber JWT keys to authenticate
- Start publishing -- send POST requests to the hub to push updates to subscribers
What You Can Do After Deployment
- Push real-time updates -- publish events to topics that subscribers receive instantly
- Subscribe to topics -- connect via SSE to receive live data updates
- Use authorization -- control access with JWT-based publisher and subscriber authentication
- Enable auto-discovery -- let clients automatically find the hub via Link headers
- Retrieve missed events -- reconnecting subscribers can catch up on events they missed
Key Features
- Server-Sent Events (SSE) for real-time push notifications
- JWT-based authorization for publishers and subscribers
- Topic-based publish/subscribe model
- Auto-discovery via HTTP Link headers
- Event history and reconnection support
- Built-in BoltDB for embedded storage -- no external database needed
- Written in Go as a single binary for high performance
- Compatible with any programming language or framework
License
AGPL-3.0 -- GitHub