Join the chat at build status npm version npm downloads code climate Greenkeeper badge

RxJS 5-based middleware for Redux. Compose and cancel async actions to create side effects and more. 中文版(非官方)

Supporting redux-observable

redux-observable is an independent project with ongoing development and support made possible thanks to donations made by these awesome backers and sponsorship by This Dot. If you'd like to join them, please consider:


This Dot

Get support, training, and project consulting by the people who created Redux Observable and RxJS!

No Platinum or Gold sponsors yet. Become one and your name or logo will be here! Help keep Open Source sustainable.

Silver Sponsors ($100+ per month)


This has peer dependencies of rxjs@5.x.x and redux, which will have to be installed as well.

npm install --save redux-observable

IMPORTANT: redux-observable does not add any of the RxJS operators to the Observable.prototype so you will need to import the ones you use or import all of them in your entry file. Learn more.

Optional Adapters

Epics use RxJS v5 by default. You can use other stream libraries (other than RxJS v5) by using an Adapter.

You can write your own adapter too:

const adapter = {
  input: input$ => /* convert Observable to your preferred stream library */,
  output: output$ => /* convert your preferred stream back to an Observable */

See the existing adapters for examples. Keep in mind that while you still need RxJS v5 installed, redux-observable only pulls in the minimum amount of RxJS it needs internally--it doesn't import all of RxJS.


We publish a UMD build inside our npm package. You can use it via the unpkg CDN:

Watch an introduction

Watch a video on redux-observable

Online Live Examples

To see redux-observable in action, here's a very simple example to play around with:



Join the chat at

Everyone is welcome on our Gitter channel!

Custom Emoji

Save this:

Add the redux-observable spinning logo to your Slack channel! Slack Instructions

*redux-observable is a community-driven, entirely volunteer project and is not officially affiliated with or sponsored by any company.


results matching ""

    No results matching ""