Latest 1.0.1
Homepage https://github.com/Bitdreams/Coordinators
License MIT
Platforms ios 8.0
Dependencies RxSwift
Frameworks UIKit
Authors

CI Status
Version
License
Platform

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

Coordinators is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'Coordinators'

Coordinators

A Coordinator is an object that owns a discrete section of your app’s logic. One common practise is to use one Coordinator per user story. When coupled with MVVM, the Coordinator becomes the ideal place to convert your model to a view model and vice-versa, instantiate the view controller with the view model and pushing it to the navigation stack. The Coordinator should also be responsible from bridging your business logic for the user story (which should be contained within the view model) with the service layer of your application (e.g. networking with your API, persisting data on Realm or Core Data, etc).

An example of a group of Coordinators dealing with the Sign In flow of an app

A single Coordinator can have from zero to n children meaning your application flow gets represented as a tree structure. When moving to a new user story, the current coordinator should instantiate the appropriate new coordinator and start it. The new coordinator becomes a part of the tree when started and removes itself when finished.

Author

Raphael Cruzeiro, [email protected]

License

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

Latest podspec

{
    "name": "Coordinators",
    "version": "1.0.1",
    "summary": "A framework for light flexible Swift MVVM coordinators",
    "description": "A framework for simple and flexible Swift Coordinators. Ideal to be used with MVVM+Coordinator architectures.",
    "homepage": "https://github.com/Bitdreams/Coordinators",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "raphaelcruzeiro": "[email protected]"
    },
    "source": {
        "git": "https://github.com/Bitdreams/Coordinators.git",
        "tag": "1.0.1"
    },
    "social_media_url": "https://twitter.com/rcdeveloper",
    "platforms": {
        "ios": "8.0"
    },
    "source_files": "Coordinators/Classes/**/*",
    "frameworks": "UIKit",
    "dependencies": {
        "RxSwift": []
    },
    "pushed_with_swift_version": "4.0"
}

Pin It on Pinterest

Share This