Uber's RIBs with Combine

ModernRIBs

ModernRIBs is recreated by removing additional dependencies such as RxSwift from Uber's RIBs. Only Combine was used. All features provided by RIBs can be used identically, and it will be continuously updated according to the RIBs updated version. Therefore, the version will be matched with the RIBs. It is expected to be useful in projects that do not use RxSwift and with a minimum supported iOS 13 or later.

Requirements

  • iOS 13.0 or later
  • macOS 10.15 or later
  • Xcode 11.0 or later

Installation

There are three ways to use ModernRIBs in your project:

  • Using CocoaPods
  • Using Swift Package Manager
  • Manual install (build frameworks or embed Xcode Project)

CocoaPods

To integrate ModernRIBs into your project add the following to your Podfile:

pod 'ModernRIBs'

Swift Package Manager

To use Swift Package Manager, you should use Xcode 11+ to open your project. Click File -> Swift Packages -> Add Package Dependency, enter ModernRIBs URL. Or you can login Xcode with your GitHub account and just type ModernRIBs to search.

After select the package, you can choose the dependency type (tagged version, branch or commit). Then Xcode will setup all the stuff for you.

If you're a framework author and use ModernRIBs as a dependency, update your Package.swift file:

let package = Package(
    // ...
    dependencies: [
        .package(url: "https://github.com/DevYeom/ModernRIBs.git", from: "1.0.0")
    ],
    // ...
)

Tooling

Run the install-xcode.template.sh shell script to copy the templates to the Xcode templates folder. Once you have successfully copied the templates, when adding a new file in Xcode, the ModernRIB group will show up.

GitHub

https://github.com/DevYeom/ModernRIBs