Alternatives to RxJS logo

Alternatives to RxJS

React, Ramda, MobX, redux-saga, and axios are the most popular alternatives and competitors to RxJS.
928
538
+ 1
18

What is RxJS and what are its top alternatives?

RxJS is a library for reactive programming using Observables, to make it easier to compose asynchronous or callback-based code. This project is a rewrite of Reactive-Extensions/RxJS with better performance, better modularity, better debuggable call stacks, while staying mostly backwards compatible, with some breaking changes that reduce the API surface.
RxJS is a tool in the Concurrency Frameworks category of a tech stack.
RxJS is an open source tool with 19.6K GitHub stars and 2.2K GitHub forks. Here’s a link to RxJS's open source repository on GitHub

Top Alternatives to RxJS

  • React

    React

    Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project. ...

  • Ramda

    Ramda

    It emphasizes a purer functional style. Immutability and side-effect free functions are at the heart of its design philosophy. This can help you get the job done with simple, elegant code. ...

  • MobX

    MobX

    MobX is a battle tested library that makes state management simple and scalable by transparently applying functional reactive programming (TFRP). React and MobX together are a powerful combination. React renders the application state by providing mechanisms to translate it into a tree of renderable components. MobX provides the mechanism to store and update the application state that React then uses. ...

  • redux-saga

    redux-saga

    An alternative side effect model for Redux apps

  • axios

    axios

    It is a Javascript library used to make http requests from node.js or XMLHttpRequests from the browser and it supports the Promise API that is native to JS ES6. ...

  • Akka

    Akka

    Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM. ...

  • Netty

    Netty

    Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. ...

  • Finagle

    Finagle

    Finagle is an extensible RPC system for the JVM, used to construct high-concurrency servers. Finagle implements uniform client and server APIs for several protocols, and is designed for high performance and concurrency. ...

RxJS alternatives & related posts

React logo

React

116.5K
95K
3.8K
A JavaScript library for building user interfaces
116.5K
95K
+ 1
3.8K
PROS OF REACT
  • 762
    Components
  • 651
    Virtual dom
  • 563
    Performance
  • 488
    Simplicity
  • 436
    Composable
  • 175
    Data flow
  • 160
    Declarative
  • 124
    Isn't an mvc framework
  • 113
    Reactive updates
  • 111
    Explicit app state
  • 34
    JSX
  • 23
    Learn once, write everywhere
  • 19
    Uni-directional data flow
  • 16
    Easy to Use
  • 14
    Works great with Flux Architecture
  • 10
    Great perfomance
  • 8
    Built by Facebook
  • 7
    Javascript
  • 5
    Speed
  • 5
    TypeScript support
  • 4
    Easy to start
  • 4
    Hooks
  • 4
    Awesome
  • 4
    Feels like the 90s
  • 4
    Scalable
  • 3
    Props
  • 3
    Server side views
  • 3
    Functional
  • 3
    Fancy third party tools
  • 2
    Obama
  • 2
    Has arrow functions
  • 2
    Strong Community
  • 2
    Beautiful and Neat Component Management
  • 2
    Sdfsdfsdf
  • 2
    Great migration pathway for older systems
  • 2
    SSR
  • 2
    Fast evolving
  • 2
    Simple, easy to reason about and makes you productive
  • 2
    Allows creating single page applications
  • 2
    Excellent Documentation
  • 2
    Rich ecosystem
  • 2
    Scales super well
  • 2
    Just the View of MVC
  • 2
    Simple
  • 2
    Closer to standard JavaScript and HTML than others
  • 2
    Super easy
  • 2
    Very gentle learning curve
  • 2
    Server Side Rendering
  • 2
    Cross-platform
  • 2
    Has functional components
  • 1
    Start simple
  • 1
    Every decision architecture wise makes sense
  • 1
    Permissively-licensed
  • 1
    Split your UI into components with one true state
  • 1
    Sharable
  • 1
    Fragments
CONS OF REACT
  • 35
    Requires discipline to keep architecture organized
  • 23
    No predefined way to structure your app
  • 21
    Need to be familiar with lots of third party packages
  • 8
    JSX
  • 7
    Not enterprise friendly
  • 4
    One-way binding only
  • 2
    State consistency with backend neglected
  • 2
    Bad Documentation

related React posts

Vaibhav Taunk
Team Lead at Technovert · | 31 upvotes · 1.7M views

I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.

See more
Adebayo Akinlaja
Engineering Manager at Andela · | 26 upvotes · 859.6K views

I picked up an idea to develop and it was no brainer I had to go with React for the frontend. I was faced with challenges when it came to what component framework to use. I had worked extensively with Material-UI but I needed something different that would offer me wider range of well customized components (I became pretty slow at styling). I brought in Evergreen after several sampling and reads online but again, after several prototype development against Evergreen—since I was using TypeScript and I had to import custom Type, it felt exhaustive. After I validated Evergreen with the designs of the idea I was developing, I also noticed I might have to do a lot of styling. I later stumbled on Material Kit, the one specifically made for React . It was promising with beautifully crafted components, most of which fits into the designs pages I had on ground.

A major problem of Material Kit for me is it isn't written in TypeScript and there isn't any plans to support its TypeScript version. I rolled up my sleeve and started converting their components to TypeScript and if you'll ask me, I am still on it.

In summary, I used the Create React App with TypeScript support and I am spending some time converting Material Kit to TypeScript before I start developing against it. All of these components are going to be hosted on Bit.

If you feel I am crazy or I have gotten something wrong, I'll be willing to listen to your opinion. Also, if you want to have a share of whatever TypeScript version of Material Kit I end up coming up with, let me know.

See more
Ramda logo

Ramda

151
72
3
A practical functional library for JavaScript programmers
151
72
+ 1
3
PROS OF RAMDA
  • 2
    Automatically curried
  • 1
    Point free programming
CONS OF RAMDA
    Be the first to leave a con

    related Ramda posts

    MobX logo

    MobX

    552
    457
    114
    Simple, scalable state management
    552
    457
    + 1
    114
    PROS OF MOBX
    • 26
      It's just stupidly simple, yet so magical
    • 18
      Easier and cleaner than Redux
    • 15
      Fast
    • 13
      Automagic updates
    • 13
      React integration
    • 10
      Computed properties
    • 8
      ES6 observers and obversables
    • 7
      Global stores
    • 3
      Flexible architecture the requeriment
    • 1
      Has own router package (mobx-router)
    CONS OF MOBX
    • 1
      Maturity

    related MobX posts

    Dan Robinson

    The front end for Heap begun to grow unwieldy. The original jQuery pieces became difficult to maintain and scale, and a decision was made to introduce Backbone.js, Marionette, and TypeScript. Ultimately this ended up being a “detour” in the search for a scalable and maintainable front-end solution. The system did allow for developers to reuse components efficiently, but adding features was a difficult process, and it eventually became a bottleneck in advancing the product.

    Today, the Heap product consists primarily of a customer-facing dashboard powered by React, MobX, and TypeScript on the front end. We wrote our migration to React and MobX in detail last year here.

    #JavascriptUiLibraries #Libraries #JavascriptMvcFrameworks #TemplatingLanguagesExtensions

    See more

    We started rebuilding our dashboard components using React from AngularJS over 3 years ago and, in order to have predictable client-side state management we introduced Redux.js inside our stack because of the popularity it gained inside the JavaScript community; that said, the number of lines of codes needed to implement even the simplest form was unnecessarily high, from a simple form to a more complex component like our team management page.

    By switching our state management to MobX we removed approximately 40% of our boilerplate code and simplified our front-end development flow, which in the ends allowed us to focus more into product features rather than architectural choices.

    See more
    redux-saga logo

    redux-saga

    366
    292
    8
    An alternative side effect model for Redux apps
    366
    292
    + 1
    8
    PROS OF REDUX-SAGA
    • 7
      Easy to test
    • 1
      Easy to learn
    CONS OF REDUX-SAGA
      Be the first to leave a con

      related redux-saga posts

      We had contemplated a long time which #JavascriptMvcFrameworks to use, React and React Native vs AngularJS and Apache Cordova in both web and mobile. Eventually we chose react over angular since it was quicker to learn, less code for simple apps and quicker integration of third party javascript modules. for the full MVC we added Redux.js for state management and redux-saga for async calls and logic. since we also have mobile app along with the web, we can shere logic and model between web and mobile.

      See more

      Choosing redux-saga for my async Redux.js middleware, for a React application, instead of the typical redux-thunk .

      Redux-saga is much easier to test than Redux-thunk - it requires no module mocking at all. Converting from redux-thunk to redux-saga is easy enough, as you are only refactoring the action creators - not your redux store or your react components. I've linked a github repo that shows the same solution with both, including Jest tests.

      See more
      axios logo

      axios

      634
      310
      0
      Promise based HTTP client for the browser and node.js
      634
      310
      + 1
      0
      PROS OF AXIOS
        Be the first to leave a pro
        CONS OF AXIOS
          Be the first to leave a con

          related axios posts

          Akka logo

          Akka

          808
          845
          85
          Build powerful concurrent & distributed applications more easily
          808
          845
          + 1
          85
          PROS OF AKKA
          • 31
            Great concurrency model
          • 16
            Fast
          • 11
            Actor Library
          • 10
            Open source
          • 7
            Resilient
          • 5
            Scalable
          • 5
            Message driven
          CONS OF AKKA
          • 3
            Mixing futures with Akka tell is difficult
          • 2
            Closing of futures
          • 2
            No type safety
          • 1
            Typed actors still not stable
          • 0
            Very difficult to refactor

          related Akka posts

          To solve the problem of scheduling and executing arbitrary tasks in its distributed infrastructure, PagerDuty created an open-source tool called Scheduler. Scheduler is written in Scala and uses Cassandra for task persistence. It also adds Apache Kafka to handle task queuing and partitioning, with Akka to structure the library’s concurrency.

          The service’s logic schedules a task by passing it to the Scheduler’s Scala API, which serializes the task metadata and enqueues it into Kafka. Scheduler then consumes the tasks, and posts them to Cassandra to prevent data loss.

          See more
          Shared insights
          on
          AkkaAkkaKafkaKafka

          I decided to use Akka instead of Kafka streams because I have personal relationships at @Lightbend.

          See more
          Netty logo

          Netty

          207
          302
          13
          Asynchronous event-driven network application framework
          207
          302
          + 1
          13
          PROS OF NETTY
          • 7
            High Performance
          • 3
            Easy to use
          • 3
            Just like it
          CONS OF NETTY
          • 1
            Limited resources to learn from

          related Netty posts

          Finagle logo

          Finagle

          66
          96
          10
          An extensible RPC system for the JVM
          66
          96
          + 1
          10
          PROS OF FINAGLE
          • 4
            Fast
          • 3
            HTTP-friendly
          • 3
            Open Source
          CONS OF FINAGLE
            Be the first to leave a con

            related Finagle posts