awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

24 repositorios

Awesome GitHub RepositoriesDependency Injection Containers

Systems that manage the instantiation and lifecycle of application components to achieve loose coupling.

Distinct from Dependency Management: Distinct from Dependency Management: focuses on the runtime inversion-of-control container rather than package versioning.

Explore 24 awesome GitHub repositories matching devops & infrastructure · Dependency Injection Containers. Refine with filters or upvote what's useful.

Awesome Dependency Injection Containers GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • bcit-ci/codeigniterAvatar de bcit-ci

    bcit-ci/CodeIgniter

    18,171Ver en GitHub↗

    CodeIgniter is an open-source PHP web framework and application toolkit designed for server-side development. It implements a model-view-controller architecture to separate internal data representations from the user interface. The framework utilizes a front-controller architecture to direct all incoming web requests through a single entry point for URI parsing and request dispatching. It includes a dependency injection container to resolve class dependencies and manage the lifecycle of core system components. The toolkit provides capabilities for routing management, database interactions, a

    Includes a dependency injection container to resolve class dependencies and manage core system component lifecycles.

    PHPphpphp-frameworkphp7
    Ver en GitHub↗18,171
  • federico-busato/modern-cpp-programmingAvatar de federico-busato

    federico-busato/Modern-CPP-Programming

    15,808Ver en GitHub↗

    This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu

    Explains how to decouple interfaces from implementations using opaque pointers to accelerate compilation and hide internal logic.

    HTMLc-plus-pluscode-qualitycompilers
    Ver en GitHub↗15,808
  • google/wireAvatar de google

    google/wire

    14,403Ver en GitHub↗

    Wire is a compile-time dependency injection framework for Go that generates code to wire application components together. It analyzes function signatures at compile time to build an explicit initialization graph, removing the need for runtime reflection or manual wiring code. The framework operates as a Go code generator and static analysis tool, transforming annotated source code into generated wire files that compile alongside the original project. It connects dependencies by matching function parameters and return types, producing a directed acyclic graph of component dependencies that is

    Creates a container that resolves and injects dependencies based on declared provider and injector functions.

    Gocodegendependency-injectiongo
    Ver en GitHub↗14,403
  • alexeymezenin/laravel-best-practicesAvatar de alexeymezenin

    alexeymezenin/laravel-best-practices

    12,299Ver en GitHub↗

    This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency. The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability. The

    Uses a service container and dependency injection to manage component instantiation and reduce class coupling.

    Ver en GitHub↗12,299
  • doctrine/ormAvatar de doctrine

    doctrine/orm

    10,172Ver en GitHub↗

    Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc

    Decouples entity dependencies by mapping interfaces or abstract classes to concrete implementations during runtime.

    PHPhacktoberfest
    Ver en GitHub↗10,172
  • kanboard/kanboardAvatar de kanboard

    kanboard/kanboard

    9,663Ver en GitHub↗

    Kanboard es una herramienta de gestión de proyectos Kanban autohospedada y suite de productividad diseñada para el seguimiento de tareas de software y la colaboración en equipo. Proporciona un sistema visual para gestionar flujos de trabajo mediante el uso de tableros, columnas y tarjetas. El proyecto cuenta con un framework de plugins extensible y una API integral para la administración programática de tareas y proyectos. Incluye gestión de identidad especializada a través de la integración LDAP, lo que permite la sincronización de cuentas de usuario y permisos de grupo desde servidores de directorio. El sistema cubre una amplia gama de capacidades, incluyendo automatización de flujo de trabajo basada en eventos, análisis detallados de proyectos como gráficos de burn-down y medición del tiempo de ciclo, y control de acceso granular basado en roles. También admite seguimiento de tiempo integrado, descomposición de subtareas y autenticación de múltiples métodos, incluida la autenticación de dos factores y soporte de proxy inverso. La aplicación es compatible con MySQL y PostgreSQL para el almacenamiento de datos persistente y se puede desplegar utilizando Docker Compose.

    Implements a dependency injection container to store and provide global access to singleton service instances.

    PHPagilekanbankanboard
    Ver en GitHub↗9,663
  • senghoo/golang-design-patternAvatar de senghoo

    senghoo/golang-design-pattern

    9,027Ver en GitHub↗

    This project is a collection of software design patterns implemented in Go, serving as a technical reference and a set of practical programming examples. It maps theoretical architectural patterns to concrete code to demonstrate structural, creational, and behavioral coding techniques. The repository provides implementations for creational patterns focused on object instantiation and blueprint management, structural patterns for organizing object compositions, and behavioral patterns that manage object interactions and responsibilities. The content covers broad capability areas including in

    Demonstrates how to program to interfaces to separate high-level logic from concrete implementations.

    Go
    Ver en GitHub↗9,027
  • teivah/100-go-mistakesAvatar de teivah

    teivah/100-go-mistakes

    7,915Ver en GitHub↗

    100 Go Mistakes is a reference book and code review companion that catalogues frequent Go programming anti-patterns and provides corrected implementations for each one. It covers a wide range of common pitfalls, from range loop variable capture and interface nil handling to error wrapping and map iteration randomization, helping developers recognize and avoid these issues in their own code. The project distinguishes itself by offering a structured, example-driven approach to learning idiomatic Go. It covers core design decisions such as when to use pointer versus value receivers, how to apply

    Replaces concrete dependencies with interfaces so implementations can be swapped without changing consumers.

    Gobookchinesedocumentation
    Ver en GitHub↗7,915
  • evrone/go-clean-templateAvatar de evrone

    evrone/go-clean-template

    7,601Ver en GitHub↗

    Clean Architecture template for Golang services

    Defines repository and use-case boundaries as Go interfaces so that the core domain never imports infrastructure packages directly.

    Goclean-architecturedependency-injectionexample
    Ver en GitHub↗7,601
  • uber-go/fxAvatar de uber-go

    uber-go/fx

    7,354Ver en GitHub↗

    Fx is a dependency injection framework and application lifecycle manager for Go. It functions as a component model container that automates the instantiation and connection of components by analyzing constructor parameters and return values to resolve complex dependency graphs. The framework distinguishes itself through module-based component bundling, which encapsulates related constructors into reusable units to manage visibility and logic. It provides advanced resolution capabilities, including mapping concrete types to interfaces for decoupling, resolving dependency ambiguities via unique

    Functions as a container that manages the instantiation and lifecycle of components to achieve loose coupling.

    Goapp-frameworkdependency-injectionframework
    Ver en GitHub↗7,354
  • hyperf/hyperfAvatar de hyperf

    hyperf/hyperf

    6,855Ver en GitHub↗

    Hyperf is a high-performance PHP coroutine framework designed for building microservices and middleware. It utilizes non-blocking coroutines to handle high concurrency and low-latency request processing, providing a foundation for scalable distributed systems. The framework is distinguished by an aspect-oriented programming based dependency injector that enables pluggable components and meta-programming. It includes a coroutine-optimized object-relational mapper with integrated model caching and an orchestration toolkit for microservice governance, featuring service discovery, circuit breaker

    Allows the removal of arbitrary resolved entries from the dependency injection container.

    PHP
    Ver en GitHub↗6,855
  • airtai/faststreamAvatar de airtai

    airtai/faststream

    5,234Ver en GitHub↗

    FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int

    Provides a built-in dependency injection container to manage and resolve application resources at runtime.

    Python
    Ver en GitHub↗5,234
  • ets-labs/python-dependency-injectorAvatar de ets-labs

    ets-labs/python-dependency-injector

    4,805Ver en GitHub↗

    This is a dependency injection framework and inversion of control container for Python. It decouples object creation from business logic by managing how services and their dependencies are assembled, delivered, and linked within an application. The framework is distinguished by its ability to perform automated component wiring, using import hooks and decorators to inject dependencies into functions and classes across different modules. It supports non-blocking flows through an asynchronous dependency resolver and manages the initialization and shutdown sequences of shared external resources a

    Defines external dependencies within a package container using placeholders to maintain implementation agnosticism.

    Pythonaiohttpasynciodependency-injection
    Ver en GitHub↗4,805
  • zio/zioAvatar de zio

    zio/zio

    4,347Ver en GitHub↗

    ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with

    ZIO programs to interfaces rather than concrete classes so different implementations can be swapped in without changing dependent code.

    Scalaasynchronicityasynchronousasynchronous-programming
    Ver en GitHub↗4,347
  • dropbox/godropboxAvatar de dropbox

    dropbox/godropbox

    4,205Ver en GitHub↗

    godropbox es un framework de desarrollo backend y blueprint de servicios para construir aplicaciones de servidor y microservicios consistentes en Go. Proporciona una colección de bibliotecas compartidas y patrones para estandarizar el proceso de desarrollo en múltiples proyectos. El proyecto incluye una biblioteca de inyección de dependencias que desacopla la lógica de negocio de las implementaciones mediante contratos de servicio basados en interfaces. También proporciona un conjunto de herramientas para compilar y desplegar aplicaciones Go como binarios estáticos autocontenidos en Linux. El framework cubre herramientas de aplicaciones empresariales, incluyendo primitivas compartidas para registro (logging), configuración y manejo de errores. Además, admite arquitectura de microservicios y orquestación de servicios en Linux para asegurar un comportamiento consistente en servicios interconectados.

    Decouples high-level business logic from low-level implementations by programming to Go interfaces.

    Go
    Ver en GitHub↗4,205
  • ardanlabs/serviceAvatar de ardanlabs

    ardanlabs/service

    4,030Ver en GitHub↗

    Este proyecto proporciona un conjunto de plantillas estructurales y frameworks para arrancar servidores de producción, backends de alto rendimiento, microservicios de Kubernetes y pipelines de IA utilizando el lenguaje de programación Go. Sirve como una arquitectura fundamental para construir infraestructura de alto rendimiento y servidores de producción escalables con enrutamiento y middleware integrados. El framework incluye una infraestructura especializada para desarrollar sistemas de generación aumentada por recuperación (RAG), enfatizando la inferencia de modelos locales y la soberanía de datos segura. Además, proporciona una plantilla de microservicio dedicada para despliegues contenerizados, centrándose en cuotas de recursos y gestión del ciclo de vida del servicio. El proyecto cubre áreas de capacidad amplias, incluyendo instrumentación de observabilidad para monitorear la salud del sistema, inyección de dependencias basada en interfaces y gestión de esquemas basada en migraciones para datos relacionales. También incorpora concurrencia basada en canales para gestionar tareas asíncronas y optimización del uso de recursos mediante perfiles de CPU y memoria.

    Decouples business logic from external infrastructure by defining interface contracts for data storage and APIs.

    Go
    Ver en GitHub↗4,030
  • cenkalti/backoffAvatar de cenkalti

    cenkalti/backoff

    4,021Ver en GitHub↗

    This is a Go library providing a framework for managing repetitive task execution and implementing exponential backoff strategies. It serves as a concurrency tool designed to prevent system overload during failures by retrying operations with increasing delays. The project implements a retry strategy framework that manages attempt limits and timeouts during unstable network or system calls. It specifically provides an implementation of the exponential backoff algorithm to handle failing operations. The library covers reliability patterns for mitigating transient failures and service outages,

    Decouples the retry logic from specific wait algorithms using interfaces to allow custom delay implementations.

    Gogolang
    Ver en GitHub↗4,021
  • casatwy/ctmediatorAvatar de casatwy

    casatwy/CTMediator

    4,015Ver en GitHub↗

    CTMediator es un localizador de servicios dinámico y un framework de arquitectura modular para iOS. Funciona como un desacoplador de dependencias que permite dividir grandes proyectos en subproyectos y targets más pequeños e independientes para mejorar la organización y reducir los tiempos de compilación. El framework permite la comunicación entre estos módulos aislados utilizando un patrón de target-action. Utiliza búsquedas dinámicas en tiempo de ejecución para despachar solicitudes y enrutar acciones a módulos específicos sin requerir un proceso de registro de servicios manual durante el inicio. El sistema gestiona el intercambio de datos y la descomposición del proyecto mediante el enrutamiento de solicitudes basado en protocolos y un patrón mediador, asegurando que los componentes internos puedan comunicarse sin crear dependencias directas.

    Removes direct dependencies between app modules using a target-action pattern for communication.

    Objective-C
    Ver en GitHub↗4,015
  • symfony/contractsAvatar de symfony

    symfony/contracts

    3,941Ver en GitHub↗

    This project is a PHP interface library that provides a component interoperability layer. It consists of a set of framework-agnostic contracts and standardized definitions that enable different libraries to work together via a consistent contract. The library focuses on providing minimal shared interfaces and API definitions, allowing software components to be used across different PHP projects regardless of the underlying framework. This approach decouples application logic from concrete framework implementations. The project specifically covers service container abstraction and dependency

    Provides generic interfaces that allow services to remain compatible across different components and versions.

    PHPabstractionscomponentcontracts
    Ver en GitHub↗3,941
  • amontalenti/elements-of-python-styleAvatar de amontalenti

    amontalenti/elements-of-python-style

    3,489Ver en GitHub↗

    This project is a comprehensive Python style guide and technical reference designed to promote the creation of clean, maintainable, and idiomatic code. It provides a set of opinionated guidelines and architectural patterns focusing on functional and declarative programming to reduce complexity and improve overall code quality. The guide establishes specific standards for naming conventions, module organization, and project layout. It emphasizes reducing object coupling by favoring modules and functions over deep class hierarchies and offers technical standards for writing docstrings and marku

    Recommends using built-in serializable types to decouple components from custom object dependencies.

    code-stylecodestyledocumentation
    Ver en GitHub↗3,489
Ant.12Siguiente
  1. Home
  2. DevOps & Infrastructure
  3. Dependency Management
  4. Dependency Injection Containers

Explorar subetiquetas

  • Container Entry ManagementCapabilities for modifying the contents of a dependency injection container at runtime, such as removing resolved entries. **Distinct from Dependency Injection Containers:** Focuses on the lifecycle management of entries within a DI container rather than package dependencies.
  • Multi-Container OrganizationStrategies for distributing dependency providers across multiple containers to manage large-scale application complexity. **Distinct from Dependency Injection Containers:** Concerns the organization of DI containers within an app, not OS-level containers or orchestration.
  • Package Dependency Decoupling2 sub-etiquetasTechniques for using placeholders in package-level containers to keep packages agnostic of concrete implementations. **Distinct from Dependency Injection Containers:** Focuses on the architectural decoupling of package dependencies using DI, not package manager installation.