Powerful dependency injection for iOS & OSX

Typhoon

Powerful dependency injection for Cocoa and CocoaTouch. Lightweight, yet full-featured and super-easy to use.

Not familiar with Dependency Injection?

Visit the Typhoon website for an introduction. There's also a nice intro over at Big Nerd Ranch, or here's an article, by John Reid. Quite a few books have been written on the topic, though we're not familiar with one that focuses specifically on Objective-C, Swift or Cocoa yet.

Usage

let assembly = MyAssembly().activated()
let viewControler = assembly.recommendationController() as! RecommendationController

Open Source Sample Applications

Have a Typhoon example app that you'd like to share? Great! Get in touch with us :)

Installing

Typhoon is available through CocoaPods or Carthage, and also builds easily from source.

With CocoaPods . . .

Static Library


# platform *must* be at least 5.0
platform :ios, '5.0'

target :MyAppTarget, :exclusive => true do

pod 'Typhoon'

end

Dynamic Framework

If you're using Swift, you may wish to install dynamic frameworks, which can be done with the Podfile shown below:

# platform *must* be at least 8.0
platform :ios, '8.0'

# flag makes all dependencies build as frameworks
use_frameworks!

# framework dependencies
pod 'Typhoon'

Simply import the Typhoon module in any Swift file that uses the framework:

import Typhoon

With Carthage

github "appsquickly/Typhoon"

From Source

Alternatively, add the source files to your project's target or set up an Xcode workspace.

NB: All versions of Typhoon work with iOS5 and up (and OSX 10.7 and up), iOS8 is only required if you wish to use dynamic frameworks.


GitHub