awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ReactiveX avatar

ReactiveX/RxSwift

0
View on GitHub↗
24,648 stars·4,161 forks·Swift·MIT·16 vues

RxSwift

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 frequent operator combinations into custom reusable logic.

The system covers a broad range of capabilities, including asynchronous stream management, resource lifecycle control via disposables, and error resilience through retry mechanisms. It provides integration adapters for HTTP requests, system notifications, and key-value observation, while offering testing utilities for simulating virtual time and verifying event sequences.

Features

  • Reactive Data Bindings - Automatically synchronizes user interface components with underlying data state changes via reactive bindings.
  • Resource Lifecycle Managers - Provides a disposable-based mechanism for predictable cleanup of subscriptions to prevent memory leaks.
  • Asynchronous Streams - Defines asynchronous sequences that emit data independently or upon subscription triggers.
  • Reactive Extensions - Provides a library for composing asynchronous and event-based programs using observable sequences.
  • Stream Type Abstractions - Implements a unified type system to model diverse asynchronous data sequences through a single interface.
  • UI Data Binding - Provides a mechanism to synchronize user interface elements with underlying data models using reactive observers.
  • Asynchronous Event Dispatchers - Manages complex sequences of asynchronous events using non-blocking dispatchers.
  • Asynchronous Error Handlers - Provides mechanisms for propagating and managing errors within asynchronous execution flows.
  • Observable Streams - Provides functional operators to transform and filter event sequences through observable stream composition.
  • Push-Based Data Propagation - Implements an observer-based push model that propagates asynchronous events to multiple subscribers.
  • Push-Based Data Stream Frameworks - Provides a framework for managing push-based data flows and combining multiple event sources into a single pipeline.
  • Reactive Programming Libraries - Implements reactive design patterns in application logic for composing asynchronous programs in Swift.
  • UI State Management - Provides a reactive framework for managing and synchronizing the state of user interface elements via data streams.
  • Stream Composition - Enables the combination of multiple network requests and callback APIs into single, manageable reactive streams.
  • Asynchronous Stream Processors - Provides utilities for transforming continuous asynchronous data flows using a declarative functional approach.
  • Data Binding Systems - Synchronizes internal data models with user interface states using event-driven mechanisms.
  • Functional Stream Transformations - Filters, throttles, and merges multiple asynchronous data sources using a functional programming approach.
  • Stream Subscriptions - Distributes a single subscription across multiple observers with support for replaying historical elements.
  • Event Stream Simulators - Triggers events at specific intervals using a virtual time scheduler to verify outputs.
  • Observable Operator Extensions - Encapsulates frequent operator combinations into reusable logic to extend base observable types.
  • System Notification Integrations - Converts system-wide notifications into observable streams for integration with asynchronous logic.
  • Asynchronous HTTP Clients - Wraps network session tasks into observables to execute HTTP requests asynchronously with cancellation support.
  • Virtual Time Schedulers - Includes a virtual time scheduler to test time-dependent event streams deterministically.
  • Property Change Observers - Tracks changes to object properties using observers and emits these changes as event streams.
  • Reactive KVO Adapters - Converts key-value notifications into reactive streams to track object property changes in real time.
  • Event Stream Merging - Combines multiple data sources into a single stream to filter and aggregate information.
  • Execution Schedulers - Allows routing of stream execution to specific dispatch queues to control timing and threading.
  • Automated Retry Strategies - Implements mechanisms to automatically re-attempt failed operations to recover from transient errors.
  • Stream Aggregators - Combines multiple asynchronous requests into a single consolidated response using stream aggregation operators.
  • Asynchronous Operation Cancellation - Terminates active asynchronous tasks in a chain when a subscription ends to prevent resource leaks.
  • Main-Thread Event Delivery - Delivers asynchronous events specifically to the main thread to ensure safe user interface updates.
  • Subscription Lifecycle Management - Cleans up resources by disposing of subscriptions manually or using automated disposal bags.
  • Throttling Utilities - Provides utilities for limiting the execution frequency of events to prevent system overload.
  • Virtual Time Testing - Verifies the behavior of time-dependent event streams using virtual time schedulers.
  • Continuous Event Emission - Emits continuous sequences of data that remain active for all subscribers without terminating.
  • Property State Tracking - Tracks the state of UI control properties and replays the current value to new subscribers on the main thread.
  • UI Event Watchers - Implements utilities for tracking interaction events within the user interface and routing them to subscribers.
  • Callback-to-Stream Adapters - Converts callback and delegate-based asynchronous interfaces into observable streams for consistent composition.
  • Event Handling - Reactive extensions for asynchronous programming.
  • Reactive Programming - Reactive programming framework for composing asynchronous streams.

Historique des stars

Graphique de l'historique des stars pour reactivex/rxswiftGraphique de l'historique des stars pour reactivex/rxswift

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à RxSwift

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec RxSwift.
  • reactivecocoa/reactivecocoaAvatar de ReactiveCocoa

    ReactiveCocoa/ReactiveCocoa

    19,835Voir sur GitHub↗

    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

    Swift
    Voir sur GitHub↗19,835
  • neuecc/unirxAvatar de neuecc

    neuecc/UniRx

    7,326Voir sur GitHub↗

    UniRx is a reactive programming library and event orchestration framework for the Unity engine. It implements observable sequences and functional operators to transform callbacks, coroutines, and engine events into cancellable data streams for unified asynchronous event handling. The library provides a reactive UI binding system that synchronizes data models with user interface elements to trigger automatic visual updates. It includes a type-based publication and subscription system to route messages between producers and consumers, decoupling internal game components. The framework covers a

    C#
    Voir sur GitHub↗7,326
  • reactor/reactor-coreAvatar de reactor

    reactor/reactor-core

    5,224Voir sur GitHub↗

    Reactor Core is a reactive programming toolkit and non-blocking foundation for composing asynchronous data pipelines on the JVM. It serves as an asynchronous stream processing framework and a backpressure management system, allowing developers to transform, filter, and combine sequences of events while regulating data flow between producers and consumers to prevent resource exhaustion. The library differentiates itself through a sophisticated concurrency scheduling system and demand-based flow control. It decouples signal processing from specific threads using a scheduler registry and provide

    Javaasynchronousflowflux
    Voir sur GitHub↗5,224
  • baconjs/bacon.jsAvatar de baconjs

    baconjs/bacon.js

    6,458Voir sur GitHub↗

    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

    TypeScript
    Voir sur GitHub↗6,458
Voir les 30 alternatives à RxSwift→

Questions fréquentes

Que fait reactivex/rxswift ?

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.

Quelles sont les fonctionnalités principales de reactivex/rxswift ?

Les fonctionnalités principales de reactivex/rxswift sont : Reactive Data Bindings, Resource Lifecycle Managers, Asynchronous Streams, Reactive Extensions, Stream Type Abstractions, UI Data Binding, Asynchronous Event Dispatchers, Asynchronous Error Handlers.

Quelles sont les alternatives open-source à reactivex/rxswift ?

Les alternatives open-source à reactivex/rxswift incluent : reactivecocoa/reactivecocoa — ReactiveCocoa is a functional reactive programming framework and Cocoa UI binding layer. It provides a library for… neuecc/unirx — UniRx is a reactive programming library and event orchestration framework for the Unity engine. It implements… reactor/reactor-core — Reactor Core is a reactive programming toolkit and non-blocking foundation for composing asynchronous data pipelines… baconjs/bacon.js — Bacon.js is a JavaScript functional reactive programming library used for coordinating complex asynchronous data… cysharp/r3 — R3 is a reactive extensions library and asynchronous data pipeline framework. It provides a system for composing… reactivex/rxjava — RxJava is a reactive stream processing framework and JVM reactive extensions library. It serves as an asynchronous…