Swift Reactive Programming

Open-source Swift projects categorized as Reactive Programming

Top 23 Swift Reactive Programming Projects

  • ReSwift

    Unidirectional Data Flow in Swift - Inspired by Redux

    Project mention: Cast for and against Redux | reddit.com/r/iOSProgramming | 2022-06-27

    There are some great examples linked to the ReSwift GitHub page: https://github.com/ReSwift/ReSwift

  • CleanArchitectureRxSwift

    Example of Clean Architecture of iOS app using RxSwift

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support. Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • ReactiveSwift

    Streams of values over time

    Project mention: Interactive Diagrams for ReactiveCocoa | news.ycombinator.com | 2022-07-30

    found this in the middle of https://github.com/ReactiveCocoa/ReactiveSwift/blob/master/D...

  • OpenCombine

    Open source implementation of Apple's Combine framework for processing values over time.

    Project mention: Combine: Why do you thinkPassthroughSubject is a class? | reddit.com/r/swift | 2022-09-23

    The OpenCombine implementation of PassthroughSubject does use a lock, and perhaps the objects needed to be a class to make sure that lock didn't get moved/duplicated.

  • Katana

    Swift Apps in a Swoosh! A modern framework for creating iOS apps, inspired by Redux.

    Project mention: INAN for my growing technology company | reddit.com/r/INeedAName | 2022-11-18

    bendingspoons.com (the company that acquired Evernote)

  • Render

    UIKit a-là SwiftUI.framework [min deployment target iOS10]

  • RxCoordinator

    🎌 Powerful navigation library for iOS based on the coordinator pattern

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • RxFlow

    RxFlow is a navigation framework for iOS applications based on a Reactive Flow Coordinator pattern

  • RxAlamofire

    RxSwift wrapper around the elegant HTTP networking in Swift Alamofire

  • RxKeyboard

    Reactive Keyboard in iOS

  • CombineExt

    CombineExt provides a collection of operators, publishers and utilities for Combine, that are not provided by Apple themselves, but are common in other Reactive Frameworks and standards.

    Project mention: new to Combine and struggling with the best way to launch multiple requests | reddit.com/r/iOSProgramming | 2023-01-21

    To take the result of one publisher and return another publisher, you'll probably want to use flatMap-3k7z5). However, based on your use case, I do believe that flatMapLatest is the way to go from CombineExt. I'll explain below.

  • RxBluetoothKit

    iOS & OSX Bluetooth library for RxSwift (by Polidea)

  • RxGesture

    RxSwift reactive wrapper for view gestures

  • ReactiveKit

    A Swift Reactive Programming Kit

  • RxRealm

    RxSwift extension for RealmSwift's types

  • RxCombine

    Bi-directional type bridging between RxSwift and Apple's Combine framework

  • RxAnimated

    Animated RxCocoa bindings

  • NSObject-Rx

    Handy RxSwift extensions on NSObject, including rx.disposeBag.

  • Bow

    🏹 Bow is a cross-platform library for Typed Functional Programming in Swift

    Project mention: Trouble building for ios device | reddit.com/r/bazel | 2022-11-23

    load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "com_github_buildbuddy_io_rules_xcodeproj", sha256 = "564381b33261ba29e3c8f505de82fc398452700b605d785ce3e4b9dd6c73b623", url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/0.9.0/release.tar.gz", ) http_archive( name = "cgrindel_rules_spm", sha256 = "03718eb865a100ba4449ebcbca6d97bf6ea78fa17346ce6d55532312e8bf9aa8", strip_prefix = "rules_spm-0.11.0", url = "https://github.com/cgrindel/rules_spm/archive/v0.11.0.tar.gz", ) load( "@cgrindel_rules_spm//spm:defs.bzl", "spm_pkg", "spm_repositories", ) load( "@cgrindel_rules_spm//spm:deps.bzl", "spm_rules_dependencies", ) spm_rules_dependencies() load( "@com_github_buildbuddy_io_rules_xcodeproj//xcodeproj:repositories.bzl", "xcodeproj_rules_dependencies", ) xcodeproj_rules_dependencies() load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() load( "@build_bazel_apple_support//lib:repositories.bzl", "apple_support_dependencies", ) apple_support_dependencies() spm_repositories( name = "swift_pkgs", platforms = [ ".macOS(.v10_15)", ], dependencies = [ spm_pkg( url = "https://github.com/apple/swift-log.git", exact_version = "1.4.2", products = ["Logging"], ), spm_pkg( url = "https://github.com/pointfreeco/swift-composable-architecture.git", exact_version = "0.43.0", products = ["ComposableArchitecture"], ), spm_pkg( name = "Bow", url = "https://github.com/bow-swift/bow.git", exact_version = "0.8.0", products = ["Bow", "BowEffects", "BowOptics"], ), spm_pkg( url = "https://github.com/grpc/grpc-swift.git", exact_version = "1.7.3", products = ["GRPC"], ), spm_pkg( url = "https://github.com/hyperoslo/Cache", exact_version = "6.0.0", products = ["Cache"], ), ], )

  • Hanson

    Lightweight observations and bindings in Swift

  • Verge

    🟣 Verge is a very tunable state-management engine on iOS App (UIKit / SwiftUI) and built-in ORM.

  • CwlSignal

    A Swift framework for reactive programming.

  • Komponents 📦

    📦 React-inspired UIKit Components - ⚠️ Deprecated

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-01-21.

Swift Reactive Programming related posts


What are some of the best open-source Reactive Programming projects in Swift? This list will help you:

Project Stars
1 ReSwift 7,339
2 CleanArchitectureRxSwift 3,611
3 ReactiveSwift 2,890
4 OpenCombine 2,384
5 Katana 2,234
6 Render 2,162
7 RxCoordinator 1,992
8 RxFlow 1,742
9 RxAlamofire 1,562
10 RxKeyboard 1,431
11 CombineExt 1,401
12 RxBluetoothKit 1,340
13 RxGesture 1,308
14 ReactiveKit 1,216
15 RxRealm 1,119
16 RxCombine 969
17 RxAnimated 687
18 NSObject-Rx 625
19 Bow 618
20 Hanson 525
21 Verge 491
22 CwlSignal 304
23 Komponents 📦 206
Build time-series-based applications quickly and at scale.
InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.