Swinject is a lightweight dependency injection framework for Swift. Dependency injection (DI) is a software design pattern that implements Inversion of Control (IoC) for resolving dependencies. In the pattern, Swinject helps your app split into loosely-coupled components, which can be developed, tested, and maintained more easily. Swinject is powered by the Swift generic type system and first-class functions to define the dependencies of your app simply and fluently. Services must be registered to a container before they are used. The typical registration approach will differ depending on whether you are using SwinjectStoryboard or not.

Features

  • Pure Swift Type Support
  • Initializer/Property/Method Injections
  • Initialization Callback
  • Object Scopes as None (Transient), Graph, Container (Singleton) and Hierarchy
  • Support of both Reference and Value Types
  • Self-registration (Self-binding)

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow Swinject

Swinject Web Site

Other Useful Business Software
Full-stack observability with actually useful AI | Grafana Cloud Icon
Full-stack observability with actually useful AI | Grafana Cloud

Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
Create free account
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Swinject!

Additional Project Details

Operating Systems

Apple iPhone

Programming Language

Swift

Related Categories

Swift Frameworks, Swift User Interface (UI) Software

Registered

2023-05-26