Tarject is a framework developed for Unity Engine to prevent tight coupling between software modules. It is an easy-to-use package that is readable, maintainable, flexible and highly optimized.What is dependency injection?Dependency injection (DI) is a software design pattern based on the principle of injecting dependencies from the outside rather than directly creating them within objects. This pattern facilitates modularity, testability, and management of dependencies in software development. DI makes the management of dependencies more flexible and sustainable.How to use Tarject?After importing this Framework into your project, you can read README.md document to get information about how to use it and examine the Samples folder for sample uses. For more details see the GitHubKey FeaturesProject, Scene and GameObject Context StructuresObject and GameObject InstallersBinding Types (Class, Instance, FromHierarchy and Factory)Binding Properties (ToInterface, WithId and Lazy)Inject Attribute can be applied to Field, Property, Method, Constructor and ParameterMonoInjecter and SceneInjecter for automatic injectionSeparatedGameObjectFactory and SeparatedObjectFactory StructuresUnity Frame Action Interfaces (IInitializable, IFixedUpdatable, IUpdatable, ILateUpdatable, ILateDisposable)SignalBusTestFramework (For now there is only UnitTest support with TarjectUnitTestFixture)100% test coverageReflectionCache for minimum reflection useDetailed sample scenario in the Sample folderFeel free to contact for support or feedback!Website | DiscordAll IL2CPP based platforms should be supported.