# Motivation

RxJS is great library that drastically simplifies the process of composing complex callback-based or asynchronous code, expressing the dynamic behavior of your app's state as reactive streams.

React with RxJS provides an single API for binding these reactive streams to your React components at the point of mounting.

Working with reactive streams has many advantages, including:

  • Providing loosely coupled solutions: reactive streams are only coupled to events that they directly depend on.
  • Optimizing react updates by avoiding unnecessary renders.
  • Improving code navigability, by avoiding unnecessary layers of indirection.