Skip to content

Latest commit

 

History

History
46 lines (32 loc) · 1.49 KB

00-index.md

File metadata and controls

46 lines (32 loc) · 1.49 KB

rsocket-js

rsocket-js implements the 1.0 version of the RSocket protocol and is designed for use in Node.js and browsers. From reactivesocket.io:

ReactiveSocket is an application protocol providing Reactive Streams semantics over an asynchronous, binary boundary.

Status

The following are currently implemented (Note: the project is experimental and there may be bugs):

  • rsocket 1.0 client
  • Node.js TCP transport client
  • Browser WebSocket client (binary)
  • TCK client for spec compliance testing
  • UTF-8 and Binary encoding at the transport layer
  • Optional JSON (de)serialization at the rsocket layer (send and receive objects instead of strings)
  • ReactiveStream data types

The following features are not yet implemented:

  • requestChannel()
  • metadataPush()
  • rsocket server
  • LEASE
  • RESUME

Reactive Streams

rsocket-js includes an implementation of the Reactive Streams API in JavaScript. Note that unlike standard Rx Observables, Reactive Streams are lazy, pull-based, and support back-pressure. Two types are implemented:

  • Flowable: An implementation of the Reactive Streams Publisher type, providing a demand-driven stream of values over time.
  • Single: Like Flowable, but resolves to a single value.

rsocket-js public API methods typically return values of these types.

Next

Next, read about the client configuration.