Monix

Overview

Monix is a high-performance Scala / Scala.js library for
composing asynchronous and event-based programs, exposing high-level
types, such as observable sequences that are exposed as asynchronous streams,
expanding on the observer pattern,
strongly inspired by ReactiveX and by Scalaz,
but designed from the ground up for back-pressure and made to cleanly interact
with Scala’s standard library, compatible out-of-the-box with the
Reactive Streams protocol.

Highlights:

exposes the kick-ass Observable, Task and Coeval

modular, only use what you need

the base library has no third-party dependencies

strives to be idiomatic Scala and encourages referential transparency,
but is built to be faster than alternatives