CombineFlow
🗺️ CombineFlow is a navigation framework for iOS applications based on a Reactive Flow Coordinator pattern inspired by RxFlow
Install / Use
/learn @baekteun/CombineFlowREADME
CombineFlow
Navigation framework for iOS applications based on a Coordinator pattern.
<br>Constents
Requirements
- iOS 13.0+
- Swift 5+
Overview
Navigation framework for iOS applications based on a Coordinator pattern
CombineFlow is inspired RxFlow
<br>Communication
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
Installation
Swift Package Manager
Swift Package Manager is a tool for managing the distribution of Swift code. It’s integrated with the Swift build system to automate the process of downloading, compiling, and linking dependencies.
To integrate CombineFlow into your Xcode project using Swift Package Manager, add it to the dependencies value of your Package.swift:
dependencies: [
.package(url: "https://github.com/baekteun/CombineFlow.git", .upToNextMajor(from: "1.0.0"))
]
Manually
If you prefer not to use either of the aforementioned dependency managers, you can integrate CombineFlow into your project manually.
<br>Usage
Quick Start
// create a path
import CombineFlow
enum ExStep: Step {
case main
}
// create a flow
import CombineFlow
import Combine
import UIKit
final class MainFlow: Flow {
private let rootVC = UINavigationController()
var root: Presentable {
rootVC
}
// navigation
func navigate(to step: any Step) -> FlowContributors {
guard let step = step as? ExStep else { return .none }
switch step {
case .main:
let vc = StepperViewController()
rootVC.setViewControllers([vc], animated: true)
return .one(.contribute(withNextPresentable: vc, withNextStepper: vc))
}
return .none
}
}
Related Skills
node-connect
351.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
