55 repositorios
Toolkits for building asynchronous, event-driven, and non-blocking applications.
Explore 55 awesome GitHub repositories matching part of an awesome list · Reactive Programming. Refine with filters or upvote what's useful.
RxJava is a reactive stream processing framework and JVM reactive extensions library. It serves as an asynchronous dataflow orchestrator used to compose event-based programs by transforming, combining, and consuming real-time data flows on the Java Virtual Machine. The project distinguishes itself through integrated backpressure flow control, which manages the emission rate between producers and consumers to prevent memory exhaustion. It further provides mechanisms for concurrent thread management and parallel data processing to offload blocking operations and maintain application responsiven
Composes asynchronous event-based programs using observable sequences.
RxJS is a library for reactive programming that provides a framework for composing asynchronous and event-based programs. It utilizes observable sequences to model data flows, allowing developers to manage complex sequences of events through a declarative programming interface. The library implements the observer pattern to facilitate decoupled communication between data producers and subscribers. By employing a lazy execution model, streams remain dormant until a consumer explicitly subscribes, at which point data production is triggered. This approach enables the construction of predictable
Reactive programming library for JavaScript.
MobX is a reactive state management library and fine-grained reactivity engine. It provides an observable data store that automatically triggers updates in the user interface when data structures change, functioning as a transparent functional reactive store to maintain a consistent source of truth. The system utilizes a dependency-graph mapping and proxy-based object observation to track data dependencies. This ensures that only the specific components dependent on changed data are updated, which reduces unnecessary re-renders and optimizes frontend performance. The library supports decoupl
State management library for reactive programming.
RxSwift is a reactive programming library for Swift that provides a framework for managing push-based data flows and composing asynchronous, event-based programs. It utilizes observable sequences and functional operators to transform and filter asynchronous sequences through a declarative approach. The library is distinguished by its ability to link asynchronous data streams directly to user interface elements, automating view updates via reactive data binding. It includes specialized tools for tracking UI control properties and events on the main thread, as well as the ability to encapsulate
Reactive programming framework for composing asynchronous streams.
ReactiveCocoa is a functional reactive programming framework and Cocoa UI binding layer. It provides a library for composing asynchronous data streams and managing application state through signals and functional operators. The framework functions as an Objective-C data binding library that links object properties and method calls to reactive streams using runtime dynamism and swizzling. It includes a utility to convert traditional key-value observation notifications into composable streams for synchronized state tracking. The project covers reactive UI programming by connecting interface el
Streams of values over time for reactive programming.
The Reactive Extensions for JavaScript
Reactive extensions for JavaScript.
ReSwift is a unidirectional data flow framework for Swift applications that centralizes state management within a single store. It ensures predictable and traceable updates by requiring all state modifications to occur through explicit actions processed by reducer functions. The library includes a state time travel debugger that records and replays sequences of actions to reload or rewind the application state. It also provides an asynchronous action dispatcher to handle side effects and network requests while maintaining synchronized state updates. The framework covers a broad surface of st
Unidirectional data flow implementation for Swift.
The .NET Reactive Extensions Library is a framework for composing, querying, and transforming asynchronous data streams. It provides a non-blocking implementation of the observer pattern to manage notifications and data flows between producers and consumers, functioning as an event stream processing library. The project applies LINQ-style querying and filtering operators to asynchronous sequences. This allows for the handling of event-driven programming patterns by utilizing composable operators to process notifications as they occur. The library covers asynchronous data streaming and non-bl
Library for composing asynchronous programs using observable sequences.
Bacon.js is a JavaScript functional reactive programming library used for coordinating complex asynchronous data flows. It functions as an observable event stream framework and an asynchronous data flow orchestrator, allowing developers to model events as declarative streams and properties. The library distinguishes itself through its ability to manage reactive state and synchronize timing across multiple sources. It provides specialized mechanisms for atomic state synchronization to prevent glitches in derived properties and offers advanced coordination strategies such as asynchronous stream
Functional reactive programming library.
JASONETTE-iOS es un framework de aplicaciones móviles basado en JSON utilizado para construir aplicaciones iOS mediante marcado JSON declarativo. Mapea datos estructurados a componentes nativos de iOS y métodos del sistema, permitiendo la definición de interfaces de usuario y respuestas a eventos sin escribir código imperativo tradicional. El framework incluye un motor de entrega de lógica remota que carga la estructura y el comportamiento de la aplicación mediante HTTP. Esto permite actualizaciones de interfaces y lógica de aplicación de forma inalámbrica (over the air) sin requerir la redistribución del binario de la aplicación. El sistema gestiona el flujo de la aplicación mediante la gestión de estado declarativa y una interfaz de puente nativo que ejecuta hardware del dispositivo y API del sistema. Puede utilizarse como una herramienta de desarrollo independiente o como una extensión híbrida para añadir conjuntos de características dinámicas a proyectos nativos de iOS existentes.
Native app creation using JSON-based definitions.
Este proyecto proporciona una especificación formal y un conjunto de interfaces estándar de Java para el procesamiento de flujos asíncronos. Define un protocolo estandarizado para pasar secuencias de elementos entre editores (publishers) y suscriptores a través de diferentes hilos, centrándose en una especificación de flujos reactivos para la JVM. El proyecto se centra en la interoperabilidad al proporcionar una API común que permite que diferentes bibliotecas de streaming asíncrono trabajen juntas. Esto se logra mediante un conjunto estándar de interfaces y mecanismos de puente que traducen entre especificaciones de streaming incompatibles. La especificación cubre un protocolo de contrapresión (backpressure) sin bloqueo para regular el flujo de datos y evitar la sobrecarga del sistema, requiriendo que los suscriptores señalen la demanda. También define el ciclo de vida de los flujos, incluyendo la gestión de suscripciones, el procesamiento de elementos y la terminación basada en señales para la limpieza de recursos. El proyecto incluye un framework para verificar el comportamiento del flujo y validar la lógica de procesamiento frente a las reglas de contrapresión y eventos asíncronos.
Standardized interface for asynchronous stream processing with backpressure.
Reactor is a reactive streams library and framework for building asynchronous data pipelines. It provides a system for coordinating execution contexts via an asynchronous event-loop manager, alongside a set of reactive abstractions for implementing high-performance TCP, UDP, QUIC, and HTTP services. The project includes a specialized testing tool for verifying the timing and order of asynchronous data flows and a bill of materials to synchronize compatible versions of core reactive libraries and networking add-ons. Its capability surface covers non-blocking network services, demand-based bac
Framework for building non-blocking applications on the JVM.
Ultra-high performance reactive programming
High-performance FRP library.
Streams of values over time
Reactive streams of values over time.
Open source implementation of Apple's Combine framework for processing values over time.
Open-source implementation of Apple's Combine framework.
🎌 Powerful navigation library for iOS based on the coordinator pattern
Navigation library based on the coordinator pattern.
Reactive collections based on Rx.Net
Reactive extensions specifically for collection management.
RxSwift wrapper around the elegant HTTP networking in Swift Alamofire
RxSwift wrapper for Alamofire networking.
Reactive Keyboard in iOS
Reactive keyboard handling for iOS.
The modular, KISS, functional reactive programming library for JavaScript.
Functional reactive streams for event transformation.