{"id":13377769,"url":"https://github.com/appsquickly/typhoon","last_synced_at":"2025-04-13T04:00:04.650Z","repository":{"id":6145359,"uuid":"7374322","full_name":"appsquickly/typhoon","owner":"appsquickly","description":"Powerful dependency injection for Objective-C ✨✨ (https://PILGRIM.PH is the pure Swift successor to Typhoon!!)✨✨","archived":false,"fork":false,"pushed_at":"2020-12-20T01:46:32.000Z","size":132639,"stargazers_count":2697,"open_issues_count":23,"forks_count":269,"subscribers_count":95,"default_branch":"master","last_synced_at":"2025-04-13T03:59:58.569Z","etag":null,"topics":["dependency-injection","di","inversion-of-control","ioc","ioc-container","typhoon"],"latest_commit_sha":null,"homepage":"https://pilgrim.ph","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appsquickly.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-12-30T06:54:24.000Z","updated_at":"2025-03-31T23:41:25.000Z","dependencies_parsed_at":"2022-08-30T23:40:19.374Z","dependency_job_id":null,"html_url":"https://github.com/appsquickly/typhoon","commit_stats":null,"previous_names":[],"tags_count":147,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsquickly%2Ftyphoon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsquickly%2Ftyphoon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsquickly%2Ftyphoon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsquickly%2Ftyphoon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appsquickly","download_url":"https://codeload.github.com/appsquickly/typhoon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248661706,"owners_count":21141450,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dependency-injection","di","inversion-of-control","ioc","ioc-container","typhoon"],"created_at":"2024-07-30T06:02:33.999Z","updated_at":"2025-04-13T04:00:04.608Z","avatar_url":"https://github.com/appsquickly.png","language":"Objective-C","funding_links":[],"categories":["Objective-C  Stars 1000以内排名整理","Objective-C"],"sub_categories":[],"readme":"# \u003ca href=\"http://appsquickly.github.io/typhoon\"\u003eTyphoon\u003c/a\u003e\n\nPowerful dependency injection for Cocoa and CocoaTouch. Lightweight, yet full-featured and super-easy to use. \n\n\n---------------------------------------\n\n# [Pilgrim](https://pilgrim.ph) is a pure Swift successor to Typhoon!!\n\nTyphoon 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. \n\n**Pilgrim (https://github.com/appsquickly/pilgrim) is a pure Swift successor to Typhoon. It is easy to migrate your Typhoon apps to [Pilgrim](https://pilgrim.ph).** \n\n---------------------------------------\n\n## Not familiar with Dependency Injection? \n\nVisit \u003ca href=\"http://appsquickly.github.io/typhoon\"\u003ethe Typhoon website\u003c/a\u003e for an introduction. There's also a nice intro over at \u003ca href=\"https://www.bignerdranch.com/blog/dependency-injection-ios/\"\u003eBig Nerd Ranch\u003c/a\u003e, or \u003ca href=\"https://www.objc.io/issues/15-testing/dependency-injection/\"\u003ehere's an article\u003c/a\u003e, by \u003ca href=\"http://qualitycoding.org/\"\u003eJohn Reid\u003c/a\u003e. 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. \n\n## Is Typhoon the right DI framework for you? \n\nCheck out the \u003ca href=\"http://appsquickly.github.io/typhoon/#features\"\u003efeature list\u003c/a\u003e. \n\n\n---------------------------------------\n\n# Usage\n\n* Read the ***Quick Start*** for \u003ca href=\"https://github.com/appsquickly/typhoon/wiki/Quick-Start\"\u003eObjective-C\u003c/a\u003e or \u003ca href=\"https://github.com/appsquickly/typhoon/wiki/Swift-Quick-Start\"\u003eSwift\u003c/a\u003e. \n* Here's the \u003ca href=\"https://github.com/appsquickly/typhoon/wiki/Types-of-Injections\"\u003eUser Guide\u003c/a\u003e.\n* \u003ca href=\"http://ios.caph.jp/typhoon/introduction\"\u003e日本のドキュメンテーション\u003c/a\u003e\n\n```swift\nlet assembly = MyAssembly().activated()\nlet viewController = assembly.recommendationController() as! RecommendationController\n```\n\n# Open Source Sample Applications\n\n* Try the official \u003ca href=\"https://github.com/appsquickly/typhoon-Swift-Example\"\u003eSwift Sample Application\u003c/a\u003e or \u003ca href=\"https://github.com/appsquickly/Typhoon-example\"\u003eObjective-C Sample Application\u003c/a\u003e. \n* This sample shows how to \u003ca href=\"https://github.com/appsquickly/Typhoon-CoreData-RAC-Example\"\u003eset up Typhoon with Storyboards, Core Data and Reactive Cocoa\u003c/a\u003e. \n\n*Have a Typhoon example app that you'd like to share? Great! Get in touch with us :)*\n\n# Installing \n[![Build Status](https://travis-ci.org/appsquickly/typhoon.svg?branch=master)](https://travis-ci.org/appsquickly/typhoon)\n[![codecov](https://codecov.io/gh/appsquickly/Typhoon/branch/master/graph/badge.svg)](https://codecov.io/gh/appsquickly/Typhoon)\n![CocoaPods Version](https://cocoapod-badges.herokuapp.com/v/Typhoon/badge.png) [![Pod Platform](https://img.shields.io/cocoapods/p/Typhoon.svg?style=flat)](http://appsquickly.github.io/Typhoon/docs/latest/api/modules.html) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Dependency Status](https://www.versioneye.com/objective-c/typhoon/1.1.1/badge.svg?style=flat)](https://www.versioneye.com/objective-c/typhoon) [![Pod License](https://img.shields.io/cocoapods/l/Typhoon.svg?style=flat)](https://github.com/appsquickly/typhoon/blob/master/LICENSE)\n\nTyphoon is available through \u003ca href=\"http://cocoapods.org/?q=Typhoon\"\u003eCocoaPods\u003c/a\u003e or \u003ca href=\"https://github.com/Carthage/Carthage\"\u003eCarthage\u003c/a\u003e, and also builds easily from source.\n\n## With CocoaPods . . . \n\n### Static Library\n\n```ruby\n\n# platform *must* be at least 5.0\nplatform :ios, '5.0'\n\ntarget :MyAppTarget, :exclusive =\u003e true do\n\npod 'Typhoon'\n\nend\n```\n\n### Dynamic Framework\n\nIf you're using Swift, you may wish to install dynamic frameworks, which can be done with the Podfile shown below: \n\n```ruby\n# platform *must* be at least 8.0\nplatform :ios, '8.0'\n\n# flag makes all dependencies build as frameworks\nuse_frameworks!\n\n# framework dependencies\npod 'Typhoon'\n```\n\nSimply import the Typhoon module in any Swift file that uses the framework:\n\n```Swift\nimport Typhoon\n```\n\n## With Carthage\n\n```\ngithub \"appsquickly/Typhoon\"\n```\n\n## From Source\n\nAlternatively, add the source files to your project's target or set up an Xcode workspace. \n\n**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.* \n\n---------------------------------------\n\n# Feedback\n\n### I'm not sure how to do [xyz]\n\nIf 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 \u003ca href=\"http://stackoverflow.com/questions/tagged/typhoon?sort=newest\u0026pageSize=15\"\u003eStack Overflow\u003c/a\u003e. Chances are your question can be answered there. \n\n### I've found a bug, or have a feature request\n\nPlease raise a \u003ca href=\"https://github.com/appsquickly/typhoon/issues\"\u003eGitHub issue\u003c/a\u003e.\n\n### Interested in contributing?\n\n Great! Here's the \u003ca href=\"https://github.com/appsquickly/typhoon/wiki/Contribution-Guide\"\u003econtribution guide.\u003c/a\u003e\n\n### I'm blown away!\n\nTyphoon 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 (\u003ca href=\"https://twitter.com/appsquickly\"\u003e@appsquickly\u003c/a\u003e). 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. \n\nTyphoon is sponsored and led by \u003ca href=\"http://appsquick.ly\"\u003eAppsQuick.ly\u003c/a\u003e with \u003ca href=\"https://github.com/appsquickly/Typhoon/graphs/contributors\"\u003econtributions from around the world\u003c/a\u003e. \n \n---------------------------------------\n© 2012 - 2015 Jasper Blues, Aleksey Garbarev and contributors.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsquickly%2Ftyphoon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappsquickly%2Ftyphoon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsquickly%2Ftyphoon/lists"}