Vessel is a fast, asynchronous client-server messaging library. Send, receive, and subscribe to messages over channels. By default, websockets are used for communication while falling back to other transports if necessary. Messaging via HTTP polling is also supported.
Message persistence is pluggable, using Redis by default.
The JavaScript client can be found here.