RoutingKit - Routing library With Swift

Overview

RoutingKit

Usage

struct MessageBody: Body {
    typealias Response = String
    var message: String
}

router.register(MessageBody.self) { $0.message }
try router.request(MessageBody(message: "message"))

URL

public protocol DemoURLDecodableBody: URLDecodableBody {}

public extension DemoURLDecodableBody {
    static var scheme: String { "demo" }
    static var host: Host { .any }
}

struct DocBody: DemoURLDecodableBody {
    typealias Response = String
    static var uri: String { "/docs/:id" }
    static func decode(from url: URL, urlParameters: Parameters) throws -> DocBody {
        DocBody(id: urlParameters["id", as: String.self]!)
    }
    var id: String
}

router.register(DocBody.self) { $0.id }
try router.request(DocBody(id: "hello"))
try router.request(url: URL(string: "demo://host/docs/uuid")!)

Wildcard

struct DocBody: DemoURLDecodableBody {
  var uri: String { "/*/:id" }
}

Installation

Swift Package Manager

License

RoutingKit is available under the MIT license. See the LICENSE file for more info.

You might also like...
LiteRoute is easy transition for your app. Written on Swift 4

LiteRoute Description LiteRoute is easy transition between VIPER modules, who implemented on pure Swift. We can transition between your modules very e

🎯Linker  Lightweight way to handle internal and external deeplinks in Swift for iOS
🎯Linker Lightweight way to handle internal and external deeplinks in Swift for iOS

Linker Lightweight way to handle internal and external deeplinks in Swift for iOS. Installation Dependency Managers CocoaPods CocoaPods is a dependenc

Monarch Router is a Declarative URL- and state-based router written in Swift.
Monarch Router is a Declarative URL- and state-based router written in Swift.

Monarch Router is a declarative routing handler that is capable of managing complex View Controllers hierarchy transitions automatically, decoupling View Controllers from each other via Coordinator and Presenters. It fits right in with Redux style state flow and reactive frameworks.

SwiftRouter - A URL Router for iOS, written in Swift

SwiftRouter A URL Router for iOS, written in Swift, inspired by HHRouter and JLRoutes. Installation SwiftRouter Version Swift Version Note Before 1.0.

📱📲 Navigate between view controllers with ease. 💫 🔜 More stable version (written in Swift 5) coming soon.

CoreNavigation 📱 📲 Navigate between view controllers with ease. 💫 🔜 More stable version (written in Swift 5) coming soon. Getting Started API Refe

Interface-oriented router for discovering modules, and injecting dependencies with protocol in Objective-C and Swift.
Interface-oriented router for discovering modules, and injecting dependencies with protocol in Objective-C and Swift.

ZIKRouter An interface-oriented router for managing modules and injecting dependencies with protocol. The view router can perform all navigation types

 ZPPRouter 组件化路由 swift
ZPPRouter 组件化路由 swift

ZPPRouter 面向组件协议 组件获取实例为协议类型 注: SPM 每一个组件最终生成的都是 framwork库 意味着组件存在命名空间(优点) Example To run the example project, clone the repo, and run pod install fro

A deep copy of Pinterest in Swift
A deep copy of Pinterest in Swift

Demo YouTube: Demo (2 minutes) 优酷:http://v.youku.com/v_show/id_XMzE3OTc5NDY2MA==.html?spm=a2h3j.8428770.3416059.1 The app is actually smoother than sh

A simple, powerful and elegant implementation of the coordinator template in Swift for UIKit
A simple, powerful and elegant implementation of the coordinator template in Swift for UIKit

A simple, powerful and elegant implementation of the coordinator template in Swift for UIKit Installation Swift Package Manager https://github.com/bar

Owner
HZ.Liu
⌚️📱💻 | Just Another iOS Developer Hailing from Hangzhou.
HZ.Liu
An App-specific Simple Routing Library

TrieRouter An App-specific Simple Routing Library Usage let r = Router() r.addRoute("tbx://index") { _ in print("root") } r.addRoute("tbx://intTes

TBXark 2 Mar 3, 2022
Easy and maintainable app navigation with path based routing for SwiftUI.

Easy and maintainable app navigation with path based routing for SwiftUI.

Freek Zijlmans 278 Jun 7, 2021
iOS routing done right. Handles both URL recognition and controller displaying with parsed parameters. All in one line, controller stack preserved automatically!

Developed and Maintained by Ipodishima Founder & CTO at Wasappli Inc. (If you need to develop an app, get in touch with our team!) So what is this lib

null 589 Dec 24, 2022
A framework for easily testing Push Notifications and Routing in XCUITests

Mussel ?? ?? A framework for easily testing Push Notifications, Universal Links and Routing in XCUITests. As of Xcode 11.4, users are able to test Pus

Compass 65 Dec 28, 2022
Native, declarative routing for SwiftUI applications.

SwiftfulRouting ?? Native, declarative routing for SwiftUI applications Setup time: 1 minute Sample project: https://github.com/SwiftfulThinking/Swift

Nick Sarno 13 Dec 24, 2022
A library for managing complex workflows in Swift

Welcome SwiftCurrent is a library that lets you easily manage journeys through your Swift application. It comes with built-in support for UIKit and Sw

WWT 290 Jan 9, 2023
Marshroute is an iOS Library for making your Routers simple but extremely powerful

Marshroute Contents Overview Detailes Tuning the transition animation 3d touch support PeekAndPopUtility Peek and pop state observing Demo Requirement

avito.tech 215 Jan 4, 2023
Eugene Kazaev 713 Dec 25, 2022
An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind

Composable Navigator An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind Vanilla S

Bahn-X 538 Dec 8, 2022
Appz 📱 Launch external apps, and deeplink, with ease using Swift!

Appz ?? Deeplinking to external applications made easy Highlights Web Fallback Support: In case the app can't open the external application, it will f

Kitz 1.1k May 5, 2021