All Projects → appsquickly → Typhoon

appsquickly / Typhoon

Licence: other
Powerful dependency injection for Objective-C ✨✨ (https://PILGRIM.PH is the pure Swift successor to Typhoon!!)✨✨

Programming Languages

objective c
16641 projects - #2 most used programming language
XSLT
1337 projects
CSS
56736 projects
HTML
75241 projects
swift
15916 projects
shell
77523 projects

Projects that are alternatives of or similar to Typhoon

vesselize
⛵ A JavaScript IoC container that works seamlessly with Vue.js and React.
Stars: ✭ 22 (-99.19%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, ioc-container, di
Singularity
A extremely fast ioc container for high performance applications
Stars: ✭ 63 (-97.68%)
Mutual labels:  dependency-injection, ioc, ioc-container, inversion-of-control, di
Ditranquillity
Dependency injection for iOS (Swift)
Stars: ✭ 317 (-88.31%)
Mutual labels:  dependency-injection, ioc, inversion-of-control, di
Reflex
Minimal dependency injection framework for Unity
Stars: ✭ 263 (-90.3%)
Mutual labels:  ioc, dependency-injection, ioc-container, di
Kangaru
🦘 A dependency injection container for C++11, C++14 and later
Stars: ✭ 297 (-89.04%)
Mutual labels:  dependency-injection, ioc, ioc-container, inversion-of-control
stashbox
A lightweight, fast, and portable dependency injection framework for .NET-based solutions.
Stars: ✭ 120 (-95.57%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, di
iocgo
A lightweight Inversion of Control (IoC) (Dependency Injection) container for Golang
Stars: ✭ 36 (-98.67%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, ioc-container
waiter
Dependency injection, Inversion of control container for rust with compile time binding.
Stars: ✭ 71 (-97.38%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, di
di
🛠 A full-featured dependency injection container for go programming language.
Stars: ✭ 156 (-94.25%)
Mutual labels:  ioc, dependency-injection, ioc-container, di
React Ioc
Hierarchical Dependency Injection with new React 16 Context API
Stars: ✭ 133 (-95.09%)
Mutual labels:  dependency-injection, ioc, ioc-container, inversion-of-control
Ioc
🦄 lightweight (<1kb) inversion of control javascript library for dependency injection written in typescript
Stars: ✭ 171 (-93.69%)
Mutual labels:  dependency-injection, ioc, ioc-container, inversion-of-control
diod
A very opinionated inversion of control (IoC) container and dependency injector for Typescript, Node.js or browser apps.
Stars: ✭ 36 (-98.67%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, di
inject
[Archived] See https://github.com/goava/di.
Stars: ✭ 49 (-98.19%)
Mutual labels:  ioc, dependency-injection, ioc-container, di
ThunderboltIoc
One of the very first IoC frameworks for .Net that has no reflection. An IoC that casts its services before thunder casts its bolts.
Stars: ✭ 40 (-98.52%)
Mutual labels:  ioc, dependency-injection, inversion-of-control, ioc-container
Container Ioc
Inversion of Control container & Dependency Injection for Javascript and Node.js apps powered by Typescript.
Stars: ✭ 89 (-96.72%)
Mutual labels:  dependency-injection, ioc, inversion-of-control, di
Swinject
Dependency injection framework for Swift with iOS/macOS/Linux
Stars: ✭ 4,958 (+82.88%)
Mutual labels:  dependency-injection, ioc-container, inversion-of-control
Typescript Ioc
A Lightweight annotation-based dependency injection container for typescript.
Stars: ✭ 427 (-84.25%)
Mutual labels:  dependency-injection, ioc, ioc-container
Hiboot
hiboot is a high performance web and cli application framework with dependency injection support
Stars: ✭ 150 (-94.47%)
Mutual labels:  dependency-injection, ioc, di
Di
Dependency Injection and IoC framework for PHP
Stars: ✭ 5 (-99.82%)
Mutual labels:  dependency-injection, ioc, ioc-container
Go Spring
基于 IoC 的 Go 后端一站式开发框架 🚀
Stars: ✭ 744 (-72.56%)
Mutual labels:  dependency-injection, ioc, inversion-of-control

Typhoon

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


Pilgrim is a pure Swift successor to Typhoon!!

Typhoon uses the Objective-C runtime to collect metadata and instantiate objects. It powers thousands of Objective-C applications but it is not all that great for modern Swift.

Pilgrim (https://github.com/appsquickly/pilgrim) is a pure Swift successor to Typhoon. It is easy to migrate your Typhoon apps to Pilgrim.


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.

Is Typhoon the right DI framework for you?

Check out the feature list.


Usage

let assembly = MyAssembly().activated()
let viewController = 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

Build Status codecov CocoaPods Version Pod Platform Carthage compatible Dependency Status Pod License

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.


Feedback

I'm not sure how to do [xyz]

If you can't find what you need in the Quick Start or User Guides above, then Typhoon users and contributors monitor the Typhoon tag on Stack Overflow. Chances are your question can be answered there.

I've found a bug, or have a feature request

Please raise a GitHub issue.

Interested in contributing?

Great! Here's the contribution guide.

I'm blown away!

Typhoon is a non-profit, community driven project. We only ask that if you've found it useful to star us on Github or send a tweet mentioning us (@appsquickly). If you've written a Typhoon related blog or tutorial, or published a new Typhoon powered app, we'd certainly be happy to hear about that too.

Typhoon is sponsored and led by AppsQuick.ly with contributions from around the world.


© 2012 - 2015 Jasper Blues, Aleksey Garbarev and contributors.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].