A new dependency injection container for Objective-C. Light-weight, yet powerful, full-featured and super-easy to use.
Non-invasive. No macros or XML required - uses powerful Objective-C run-time.
No magic strings - hooks into your IDE support enabling refactoring and compile-time checking.
Dependencies declared in any order. (The order that makes sense to humans).
Allows both dependency injection (injection of classes defined in the DI context) as well as configuration management (values that get converted to the required type at runtime). Because this allows. . .
No fragmented qualifier macros, modules, etc. Makes it easy to have multiple configurations of the same base-class or protocol.
Application assembly - the wiring of dependencies and configuration management - is all encapsulated in a convenient document. At the same time this document can be grouped into chapters. Now you know where to look if you need to change something.
Supports both initializer and property injection. In the case of the latter, it has customizable call-backs to ensure that the class is in the required state before and after properties are set.
Lean. It has a very low footprint, so is appropriate for CPU and memory constrained devices.
License: Apache 2.0
Get all the logs you need and fix bugs, crashes, and other issues in minutes instead of days. With Instabug you will automatically receive device data, network logs, and reproduction steps with every bug and crash report. It only takes a line of code to integrate and is perfect for teams that are now working remotely. See more detailed features comparison and try Instabug for free here.