ReactiveX, or Rx for short, is an API for programming with Observable streams. This is the official ReactiveX API for the Go language. ReactiveX is a new, alternative way of asynchronous programming to callbacks, promises, and deferred. It is about processing streams of events or items, with events being any occurrences or changes within the system. A stream of events is called an Observable. An operator is a function that defines an Observable, how and when it should emit data. The RxGo implementation is based on the concept of pipelines. A pipeline is a series of stages connected by channels, where each stage is a group of goroutines running the same function. Each operator is a transformation stage. By default, everything is sequential. Yet, we can leverage modern CPU architectures by defining multiple instances of the same operator. Each operator instance being a goroutine connected to a common channel.

Features

  • The philosophy of RxGo is to implement the ReactiveX concepts and leverage the main Go primitives
  • The Just operator creates an Observable from a static list of items
  • When the data is produced by the Observable itself, it is a cold Observable
  • When the data is produced outside the Observable, it is a hot Observable
  • Define a transformation function
  • Create a static Observable based on a fixed list of items

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow RxGo

RxGo Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of RxGo!

Additional Project Details

Programming Language

Go

Related Categories

Go Software Development Software

Registered

2022-02-04