Interface-oriented router for discovering modules, and injecting dependencies
What is ZIKRouter?
An interface-oriented router for managing modules and injecting dependencies with protocol.
The view router can perform all navigation types in UIKit / AppKit through one method.
The service router can discover and prepare corresponding module with its protocol.
Features:
- Swift and Objective-C support
- iOS, macOS and tvOS support
- File template for quickly creating router
- Routing for UIViewController / NSViewController, UIView / NSView and any class
- Dependency injection, including dynamic injection and static injection
- Declaration of routable protocol for compile-time checking. Using undeclared protocol will bring compiler error. This is one of the most powerful feature
- Module matching with its protocol
- URL routing support
- Configure the module with its protocol rather than a parameter dictionary
- Required protocol and provided protocol for making thorough decouple
- Adapter for decoupling modules and add compatible interfaces
- Storyboard support. Views from a segue can be auto prepared
- Encapsulation for all transition methods and unwind methods in UIKit / AppKit, and also custom transition
- Error checking for view transition
- AOP for view transition
- Memory leak detection
- Custom events handling
- Auto registration
- Highly scalable
Overview
- Pricing: Free
- Resource Link: https://github.com/Zuikyo/ZIKRouter
- Resource Maker: Zuikyo
- Mobile Platform Destination: iOS Apps
- Mobile Platform Support: Native iOS
- Programming Languages: Objective-C
- iOS Versions Supported: iOS 7.0+, iOS 8.0+, iOS 9.0+, iOS 10.0+, iOS 11.0+, iOS 12.0+
- CocoaPods: ZIKRouter
- Carthage: Zuikyo/ZIKRouter
The team behind mobintouch
Website: https://www.mobintouch.com
Resources added 👉 3142
Related resources
OAuthSwift
Swift based OAuth library for iOS
DVR
Network testing for Swift
ARKit-CoreLocation
Combines the high accuracy of AR with the scale of GPS data