awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Simple Pub-Sub Messaging Systems

Ranking updated Jun 30, 2026

For an easy pub-sub messaging system, the first results are centrifugal/centrifugo (Centrifugo is a self-hosted real-time messaging server distributed as a single binary with a built-in admin UI, supporting WebSocket and HTTP APIs, and is lightweight and Docker-friendly, making it an ideal fit for a simple, low-overhead pub-sub system), binwiederhier/ntfy (ntfy is a self-hosted topic-based pub-sub server that uses simple HTTP requests for publish and subscribe, making it lightweight and deployable as a single Go binary, but it lacks a built-in admin UI and explicit WebSocket support which are noted requirements) and apache/kafka (Kafka is a pub-sub messaging system, but it is a heavyweight distributed platform designed for high throughput and fault tolerance, not a lightweight, easy-to-deploy system minimizing operational overhead). nats-io/nats-server and dunglas/mercure round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

Lightweight message brokers and pub-sub platforms designed for easy deployment and minimal operational overhead.

Simple Pub-Sub Messaging Systems

Find the best repos with AI.We'll search the best matching repositories with AI.
  • centrifugal/centrifugocentrifugal avatar

    centrifugal/centrifugo

    10,404View on GitHub↗

    Centrifugo is a self-hosted real-time messaging server that provides infrastructure for scalable notifications, a publish-subscribe message broker, and a language-agnostic WebSocket gateway. It allows for the delivery of instant messages and data streams to concurrent users via WebSockets and Server-Sent Events. The system functions as a communication layer that separates network transport from backend business logic. It supports distributed messaging clusters using Redis for coordination of presence and message delivery across multiple server nodes. The project covers channel subscription m

    Centrifugo is a self-hosted real-time messaging server distributed as a single binary with a built-in admin UI, supporting WebSocket and HTTP APIs, and is lightweight and Docker-friendly, making it an ideal fit for a simple, low-overhead pub-sub system.

    GoReal-Time Messaging SystemsConnection Authentication MechanismsDistributed Messaging
    View on GitHub↗10,404
  • binwiederhier/ntfybinwiederhier avatar

    binwiederhier/ntfy

    30,790View on GitHub↗

    ntfy is a self-hosted messaging infrastructure that provides a lightweight platform for sending and receiving real-time notifications. It functions as a topic-based pub-sub server, allowing users to publish and subscribe to message channels using standard HTTP requests. By bridging server-side events with native mobile and desktop clients, it enables the delivery of alerts across various environments through a unified communication layer. The project distinguishes itself by offering a complete, private notification ecosystem that includes persistent message caching and robust access control.

    ntfy is a self-hosted topic-based pub-sub server that uses simple HTTP requests for publish and subscribe, making it lightweight and deployable as a single Go binary, but it lacks a built-in admin UI and explicit WebSocket support which are noted requirements.

    GoPubSub Messaging SystemsMessage BrokersNotification Services
    View on GitHub↗30,790
  • apache/kafkaapache avatar

    apache/kafka

    32,846View on GitHub↗

    Kafka is a distributed event streaming platform designed for capturing, storing, and processing real-time data streams across interconnected nodes. It functions as a distributed commit log, providing a fault-tolerant storage mechanism that records state changes sequentially to ensure data consistency and durability across distributed environments. The platform distinguishes itself through a partitioned commit log architecture that enables horizontal scaling and parallel processing of data streams. It integrates a stream processing engine for continuous transformations and aggregations, while

    Kafka is a pub-sub messaging system, but it is a heavyweight distributed platform designed for high throughput and fault tolerance, not a lightweight, easy-to-deploy system minimizing operational overhead.

    JavaDistributed Event Streaming PlatformsDistributed Commit LogsData Streaming Platforms
    View on GitHub↗32,846
  • nats-io/nats-servernats-io avatar

    nats-io/nats-server

    20,076View on GitHub↗

    NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge computing, and distributed microservices. It functions as a distributed publish-subscribe broker that routes messages using hierarchical, dot-separated subject strings, enabling decoupled communication between services without requiring centralized broker lookups. The system supports core messaging patterns including asynchronous publish-subscribe, request-reply, and load-balanced queue processing. The platform distinguishes itself through a decentralized architecture that eliminates t

    NATS Server is a high-performance publish-subscribe messaging system that deploys as a single binary and supports WebSocket, HTTP APIs, and Docker, making it a lightweight, easy-to-operate broker — though it lacks a graphical built-in admin UI out of the box, which is the one listed feature not fully covered.

    GoDistributed MessagingPublish-Subscribe MessagingClient-to-Client Messaging
    View on GitHub↗20,076
  • dunglas/mercuredunglas avatar

    dunglas/mercure

    5,266View on GitHub↗

    Mercure is an HTTP-based message broker and real-time pub/sub server that routes asynchronous data updates to authorized subscribers. It functions as a centralized hub that receives data via standard HTTP requests and broadcasts it to web clients using the Server-Sent Events protocol. The project distinguishes itself by replacing WebSockets with a unidirectional HTTP connection, leveraging HTTP/2 and HTTP/3 for multiplexed, low-latency delivery. It implements a secure access control layer using JSON Web Tokens and JSON Web Signatures to validate the identity of publishers and subscribers, and

    Mercure is an HTTP-based pub/sub server built as a single Go binary that provides real-time messaging via Server-Sent Events and an HTTP API, making it a lightweight, easy-to-deploy choice for this search, though it uses SSE instead of WebSockets.

    GoReal-Time Data StreamingServer-Sent EventsAccess Control
    View on GitHub↗5,266
  • emitter-io/emitteremitter-io avatar

    emitter-io/emitter

    4,005View on GitHub↗

    Emitter is a distributed pub-sub platform and message brokering system that decouples senders and receivers through topic-based routing. It functions as an MQTT message broker and WebSocket communication server, enabling real-time data exchange between hardware devices and web-based clients. The system acts as a secure channel orchestrator and message persistence engine. It ensures delivery through a storage system that buffers historical messages and queues data for offline subscribers. Access to these data streams is managed via time-limited permission keys that enforce granular read and wr

    Emitter is a Go-based pub-sub platform that runs as a single binary and supports MQTT with WebSocket, making it a solid fit for a simple deployable messaging system, though its emphasis on distributed clustering might add some operational complexity beyond minimal.

    GoWebSocket Servers
    View on GitHub↗4,005
  • nats-io/nats-streaming-servernats-io avatar

    nats-io/nats-streaming-server

    2,527View on GitHub↗

    NATS Streaming System Server

    NATS Streaming Server is a lightweight, single-binary publish-subscribe messaging system that supports WebSocket and Docker, so it fits the core need for a simple-to-operate message broker, though its built-in admin UI is minimal or absent.

    GoData Pipelines
    View on GitHub↗2,527
  • trailbaseio/trailbasetrailbaseio avatar

    trailbaseio/trailbase

    5,324View on GitHub↗

    Trailbase is a backend-as-a-service platform delivered as a single executable that integrates a realtime database engine, an identity and access manager, and a type-safe API generator. It provides a comprehensive backend environment including a SQLite-backed storage engine and a WebAssembly runtime server for executing custom logic. The platform distinguishes itself by automatically transforming database schemas into JSON APIs with cross-language client bindings and by allowing the execution of portable components for server-side rendering and custom HTTP routes. It further incorporates vecto

    Trailbase is a full backend-as-a-service platform with realtime database and API generation, not a dedicated lightweight publish-subscribe messaging system; while it includes some realtime features, its scope and complexity are far broader than the simple, minimal pub-sub tool you are after.

    RustSingle-Binary Deployments
    View on GitHub↗5,324
  • deployd/deployddeployd avatar

    deployd/deployd

    4,942View on GitHub↗

    deployd is a realtime API framework and MongoDB backend as a service that allows for the creation of networked interfaces synchronizing data and events between clients and servers. It functions as a JavaScript API middleware that can be integrated with HTTP servers to provide authentication, request interceptors, and realtime capabilities. The project features a self-hosted API management dashboard for configuring resource settings, managing data collections, and monitoring server status through a web-based interface. It includes a realtime data synchronization engine that pushes live databas

    Deployd is a realtime API framework and backend-as-a-service built on MongoDB, not a lightweight, self-contained publish-subscribe messaging system—it requires a database server and lacks the single-binary deployment and minimal operational overhead you need.

    JavaScriptAdmin DashboardsAdministrative Dashboards
    View on GitHub↗4,942
  • abhinavxd/libredeskabhinavxd avatar

    abhinavxd/libredesk

    2,571View on GitHub↗

    Libredesk is an omnichannel support management system designed to unify live chat and email communications into a single dashboard. It provides a comprehensive environment for managing customer interactions, agent roles, and team assignments to organize support workloads. The project distinguishes itself through AI customer support automation, which includes generating automated responses and refining message tones. It also supports the development and integration of custom chat widgets using WebSockets and JavaScript APIs. The system covers a broad set of capabilities, including customer re

    Libredesk is a full-featured customer support and ticketing system built around live chat and email, not a general-purpose publish-subscribe messaging broker; while it uses WebSockets and has a UI, its purpose is helpdesk management rather than lightweight pub-sub message routing.

    GoSingle-Binary DeploymentsSelf-Contained Deployments
    View on GitHub↗2,571
  • unetworking/uwebsocketsuNetworking avatar

    uNetworking/uWebSockets

    18,888View on GitHub↗

    uWebSockets is a high-performance networking engine providing an HTTP web server and a WebSocket server framework. It implements a multi-threaded event loop architecture to deploy isolated application instances across multiple CPU cores and includes an SSL/TLS network layer for secure, encrypted communication. The project features a dedicated WebSocket pub/sub engine for distributing messages to specific groups of connected clients. It optimizes network throughput through syscall corking to reduce kernel overhead and employs payload compression to minimize data transfer sizes. The system cov

    uWebSockets is a high-performance C++ networking library with a WebSocket pub/sub engine, but it's a building block for building services rather than a ready-to-deploy, lightweight messaging system with a single binary and admin UI.

    C++WebSocket Servers
    View on GitHub↗18,888
  • rocketchat/rocket.chatRocketChat avatar

    RocketChat/Rocket.Chat

    45,476View on GitHub↗

    Rocket.Chat is a self-hosted communication platform designed for organizations to maintain full control over their messaging infrastructure and data. It functions as a scalable collaboration suite that supports growing teams by managing consistent configuration cycles across diverse deployment environments. The platform distinguishes itself through a modular architecture that allows for deep customization of enterprise collaboration workflows. It features a sandboxed application engine that enables developers to build and integrate custom tools and plugins within an isolated environment, ensu

    Rocket.Chat is a full-featured team chat platform with real-time messaging, not a lightweight publish-subscribe broker; it requires a database and more resources than the minimal, single-binary system you are looking for.

    TypeScriptWebSocket Servers
    View on GitHub↗45,476
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
centrifugal/centrifugo10.4KGoApache-2.0Jun 16, 2026
binwiederhier/ntfy30.8KGoApache-2.0Jun 16, 2026
apache/kafka32.8KJavaApache-2.0Jun 16, 2026
nats-io/nats-server20.1KGoApache-2.0Jun 23, 2026
dunglas/mercure5.3KGoAGPL-3.0Jun 15, 2026
emitter-io/emitter4KGoAGPL-3.0Apr 29, 2026
nats-io/nats-streaming-server2.5KGoApache-2.0Apr 1, 2024
trailbaseio/trailbase5.3KRustOSL-3.0Jun 16, 2026
deployd/deployd4.9KJavaScript—Apr 16, 2019
abhinavxd/libredesk2.6KGoAGPL-3.0Jun 16, 2026

Related searches

  • a lightweight message broker for event-driven systems
  • an open source message broker for services
  • a simple message broker for tasks
  • a message queue library for Go
  • a lightweight message queue for Java
  • a message queue library for C#
  • a message queue library for PHP
  • a distributed message broker for high-throughput pipelines