PubSubJS - Dependency free publish/subscribe for JavaScript

  •        112

PubSubJS is a topic-based publish/subscribe library written in JavaScript. PubSubJS has synchronisation decoupling, so topics are published asynchronously. This helps keep your program predictable as the originator of topics will not be blocked while consumers process them.

https://github.com/mroderick/PubSubJS

Tags
Implementation
License
Platform

   




Related Projects

Distributed Publish/Subscribe (Pub/Sub) Event System

  •    

The Web Solutions Platform (WSP) event system is a general-purpose distributed publish/subscribe event system designed for high performance and low latency. Publish/subscribe is a common communication pattern though there are many variations to solve different scenario require...

Luxun - A high-throughput, persistent, distributed, publish-subscribe messaging system based on memo

  •    Java

A high-throughput, persistent, distributed, publish-subscribe messaging system based on memory mapped file and Thrift RPC.

MBassador - Light-weight, high-performance event bus implementing the publish subscribe pattern

  •    Java

MBassador is a light-weight, high-performance event bus implementing the publish subscribe pattern. It is designed for ease of use and aims to be feature rich and extensible while preserving resource efficiency and performance. The core of MBassador is built around a custom data structure that provides non-blocking reads and minimized lock contention for writes such that performance degradation of concurrent read/write access is minimal.

Faye - Simple pub/sub messaging for the web

  •    Javascript

Faye is a set of tools for simple publish-subscribe messaging between web clients. It ships with easy-to-use message routing servers for Node.js and Rack applications, and clients that can be used on the server and in the browser. It is based on the Bayeux protocol.


private_pub - Handle pub/sub messaging through private channels in Rails using Faye.

  •    Ruby

Private Pub is a Ruby gem for use with Rails to publish and subscribe to messages through Faye. It allows you to easily provide real-time updates through an open socket without tying up a Rails process. All channels are private so users can only listen to events you subscribe them to. Watch RailsCasts Episode 316 for a demonstration of Private Pub.

MinPubSub - 0.1kb publish/subscribe messaging micro-framework

  •    Javascript

A micro publish/subscribe messaging framework, weighing in at only 198 bytes gzipped. Created by rewriting Peter Higgins' jQuery plugin, MinPubSub is completely self contained with no external dependencies. Keep your projects loosely coupled with this powerful design pattern. Also available on NPM and Bower. If you don't want these methods added to the window object simply modify the immediate function to pass in the JavaScript object of your choosing.

emitter - High performance, distributed and low latency publish-subscribe platform.

  •    Go

Emitter is a free open source real-time messaging service that connects all devices. This publish-subscribe messaging API is built for speed and security. Emitter is a real-time communication service for connecting online devices. Infrastructure and APIs for IoT, gaming, apps and real-time web. At its core, emitter.io is a distributed, scalable and fault-tolerant publish-subscribe messaging platform based on MQTT protocol and featuring message storage.

mist - A distributed, tag-based pub-sub service for modern web applications and container-driven cloud

  •    Go

Mist is a simple pub/sub based on the idea that messages are tagged. To subscribe, a client simply constructs a list of tags that it is interested in, and all messages that are tagged with all of those tags are sent to that client. A client can not only be a subscriber (with multiple active subscriptions), but also a publisher. Clients will receive messages for any tags they are subscribed, except message publish by themselves.

Kapacitor - Open source framework for processing, monitoring, and alerting on time series data

  •    Go

Kapacitor is a open source framework for processing, monitoring, and alerting on time series data. Kapacitor imports (stream or batch) time series data, and then transform, analyze, and act on the data. It uses Telegraf to collect system metrics on your local machine and store them in InfluxDB.

golongpoll - golang long polling library

  •    Go

Golang long polling library. Makes web pub-sub easy via an HTTP long-poll server.To use, create a LongpollManager and then use it to publish events and expose an HTTP handler to subscribe to events.

wisper - A micro library providing Ruby objects with Publish-Subscribe capabilities

  •    Ruby

Note: Wisper was originally extracted from a Rails codebase but is not dependant on Rails. Please also see the Wiki for more additional information and articles.

Apache Apollo - ActiveMQ's next generation of messaging

  •    Java

ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It accomplishes this using a radically different threading and message dispatching architecture. Like ActiveMQ, Apollo is a multi-protocol broker and supports STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets.

js-signals - Custom Event/Messaging system for JavaScript inspired by AS3-Signals

  •    Javascript

Custom event/messaging system for JavaScript inspired by AS3-Signals.For a more in-depth introduction read the JS-Signals Project Page and visit the links below.

eventemitter3 - EventEmitter3 - Because there's also a number 2. And we're faster.

  •    Javascript

It's a drop in replacement for existing EventEmitters, but just faster. Free performance, who wouldn't want that? The EventEmitter is written in EcmaScript 3 so it will work in the oldest browsers and node versions that you need to support.We've upgraded the API of the EventEmitter.on, EventEmitter.once and EventEmitter.removeListener to accept an extra argument which is the context or this value that should be set for the emitted events. This means you no longer have the overhead of an event that required fn.bind in order to get a custom this value.

Sqlbrite - A lightweight wrapper around SQLiteOpenHelper which introduces reactive stream semantics to SQL operations

  •    Java

A lightweight wrapper around SQLiteOpenHelper and ContentResolver which introduces reactive stream semantics to queries. SQL Brite's only responsibility is to be a mechanism for coordinating and composing the notification of updates to tables such that you can update queries as soon as data changes. This library is not an ORM. It is not a type-safe query mechanism. It won't serialize the same POJOs you use for Gson. It's not going to perform database migrations for you.

SwiftEventBus - A publish/subscribe EventBus optimized for iOS

  •    Swift

Subscribers implement event handling methods that will be called when an event is received. Post an event from any part of your code. All subscribers matching the event type will receive it.

nanoevents - Simple and tiny (119 bytes) event emitter library for JavaScript

  •    Javascript

Simple and tiny event emitter library for JavaScript. Methods on returns unbind function. Call it and this listener will be removed from event.

gnatsd - High-Performance server for NATS, the cloud native messaging system.

  •    Go

NATS Server is a simple, high performance open source messaging system for cloud native applications, IoT messaging, and microservices architectures. It implements a highly scalable and elegant publish-subscribe (pub/sub) distribution model. The performant nature of NATS make it an ideal base for building modern, reliable, scalable cloud native distributed systems.