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

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektMCP-ServerÜber unsRanking-MethodikPresse
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

39 Repos

Awesome GitHub RepositoriesDependency Injection Frameworks

Libraries that implement inversion of control to manage component dependencies.

Distinguishing note: Focuses on architectural decoupling.

Explore 39 awesome GitHub repositories matching software engineering & architecture · Dependency Injection Frameworks. Refine with filters or upvote what's useful.

Awesome Dependency Injection Frameworks GitHub Repositories

Finde die besten Repos mit KI.Wir suchen mit KI nach den am besten passenden Repositories.
  • android/architecture-samplesAvatar von android

    android/architecture-samples

    45,719Auf GitHub ansehen↗

    This project is a collection of reference implementations demonstrating recommended patterns for organizing code and managing data flow in Android applications. It provides structural examples of layered architecture, separating code into presentation, domain, and data layers to decouple business logic from data sources. The repository includes specific samples for implementing declarative user interfaces that automatically update their visual state based on underlying data changes. It further demonstrates how to manage object lifetimes and component dependencies to reduce boilerplate and sim

    Implements inversion of control to manage object lifetimes and component dependencies for improved modularity.

    Kotlinandroidandroid-architecturesamples
    Auf GitHub ansehen↗45,719
  • apple/containerAvatar von apple

    apple/container

    37,726Auf GitHub ansehen↗

    This project serves as a technical educational resource and software implementation example focused on dependency injection architecture and containerized application packaging. It provides a centralized framework for managing the lifecycle and configuration of application components, allowing objects to receive their dependencies from a registry rather than creating them internally. The project distinguishes itself by offering a type-safe service resolution mechanism that uses language-level information to map abstract interfaces to concrete implementations. By utilizing an inversion of cont

    Decouples object creation from usage by centralizing component configuration and lifecycle management.

    Swift
    Auf GitHub ansehen↗37,726
  • ziadoz/awesome-phpAvatar von ziadoz

    ziadoz/awesome-php

    32,573Auf GitHub ansehen↗

    This project is a community-driven directory and knowledge base for the PHP ecosystem. It serves as a comprehensive index of high-quality libraries, frameworks, tools, and educational materials, designed to help developers navigate the landscape and select appropriate solutions for their software projects. The directory distinguishes itself through a hierarchical taxonomy that organizes vast amounts of technical information into a logical, human-readable structure. By relying on distributed contributions from the developer community, it maintains a current and vetted collection of references

    Provides curated resources for dependency injection.

    awesomeawesome-listsphp
    Auf GitHub ansehen↗32,573
  • emberjs/ember.jsAvatar von emberjs

    emberjs/ember.js

    22,566Auf GitHub ansehen↗

    Ember.js is a structured JavaScript web framework designed for building scalable web applications. It utilizes a Model-View-Controller architectural pattern and incorporates a component-based UI library, a dependency injection framework, and a client-side routing engine. The framework distinguishes itself through a centralized registry for passing shared services across components and routes, alongside a routing system that maps URLs directly to templates and data models to manage navigation. Its broader capabilities include reactive state synchronization and computation memoization for UI p

    Implements inversion of control to manage component dependencies via a centralized registry.

    TypeScript
    Auf GitHub ansehen↗22,566
  • pointfreeco/swift-composable-architectureAvatar von pointfreeco

    pointfreeco/swift-composable-architecture

    14,726Auf GitHub ansehen↗

    This is a Swift state management framework and application logic library designed for building applications with a single source of truth and unidirectional data flow. It provides a Redux-inspired architecture that separates business logic from side effects and user interfaces to ensure predictable application behavior across multiple screens. The framework focuses on modularity by allowing complex features to be decomposed into smaller, isolated components. This enables the development of UI-independent business logic that can be extracted into separate modules to improve compilation speed a

    Wraps external dependencies like timers and file systems to ensure predictable behavior during tests and previews.

    Swiftarchitecturecompositionmodularity
    Auf GitHub ansehen↗14,726
  • effect-ts/coreAvatar von Effect-TS

    Effect-TS/core

    14,618Auf GitHub ansehen↗

    This project is a functional programming library and toolkit for building production TypeScript applications. It provides a system for managing concurrency, error handling, and resource lifecycles using functional effects. The project distinguishes itself through a comprehensive suite of specialized toolkits, including a dependency injection framework for decoupling service implementations, a workflow orchestrator for coordinating durable processes, and a SQL database toolkit for consistent data operations across multiple dialects. It also implements an OpenTelemetry instrumentation library f

    Implements a dependency injection framework to decouple service implementations from their usage for better testability.

    TypeScript
    Auf GitHub ansehen↗14,618
  • dotnet/aspnetcore.docsAvatar von dotnet

    dotnet/AspNetCore.Docs

    13,115Auf GitHub ansehen↗

    ASP.NET Core is a unified, cross-platform framework designed for building scalable web applications and services. It provides a comprehensive environment for constructing server-side rendered applications, real-time communication services, and interactive web components using C# and .NET. The framework distinguishes itself through a modular architecture that centers on a built-in dependency injection container, which manages service lifecycles and component modularity to improve testability. It utilizes a middleware pipeline to process requests and employs policy-based authorization to secure

    Implements inversion of control to manage component dependencies and service lifetimes.

    C#aspaspnetaspnet-core
    Auf GitHub ansehen↗13,115
  • felangel/blocAvatar von felangel

    felangel/bloc

    12,455Auf GitHub ansehen↗

    This is a Dart state management library and architectural framework that decouples business logic from the user interface by transforming a stream of events into a stream of states. It implements a business logic component pattern to ensure that state transitions are predictable and testable. The project distinguishes itself through advanced event stream processing, providing concurrency strategies to drop, restart, or queue incoming events. It includes a dedicated state persistence layer for saving and restoring application state to maintain session continuity, as well as tools for state his

    Includes a dependency injection system to manage the lifecycle and disposal of state managers and repositories.

    Dart
    Auf GitHub ansehen↗12,455
  • go-martini/martiniAvatar von go-martini

    go-martini/martini

    11,603Auf GitHub ansehen↗

    Martini is a web framework for the Go programming language that provides a toolkit for building web applications. It functions as a routing engine and an HTTP middleware pipeline to map network requests to specific handler functions. The framework is distinguished by its dependency injection system, which automatically resolves and provides requested service types as arguments to handler functions. This allows for the decoupling of business logic from infrastructure by matching requested types against a registry of available services. The project covers a broad range of web capabilities, inc

    Implements an inversion-of-control system to automatically resolve and inject service dependencies into handlers.

    Go
    Auf GitHub ansehen↗11,603
  • shabinder/spotiflyerAvatar von Shabinder

    Shabinder/SpotiFlyer

    11,074Auf GitHub ansehen↗

    SpotiFlyer is a cross-platform media utility designed to aggregate music from multiple streaming services into a single, unified library. It functions as a music downloader and offline audio manager, allowing users to save tracks directly to local device storage for playback without an active internet connection. The application utilizes a plugin-based provider architecture to normalize metadata from diverse external sources, enabling the consolidation of content into a consistent format. This modular design supports the integration of custom modules and external services, which expands the c

    Decouples components at runtime to allow for flexible integration of custom modules and third-party service extensions.

    Kotlinalbum-downloaderalbumsandroid
    Auf GitHub ansehen↗11,074
  • insertkoinio/koinAvatar von InsertKoinIO

    InsertKoinIO/koin

    9,992Auf GitHub ansehen↗

    Koin is a dependency injection framework for Kotlin applications that manages object lifetimes and resolves dependencies through a lightweight container. It functions as a multiplatform library, allowing shared object definitions and resource bindings to be reused across different target platforms and source sets. The framework provides a system for resolving dependencies directly within user interface components to decouple business logic from view implementations. It includes a compile-time dependency validator that analyzes dependency graphs during the build process to detect missing bindi

    Implements a lightweight inversion of control container to manage object lifetimes and resolve dependencies across Kotlin applications.

    Kotlinandroiddependency-injectioninjection
    Auf GitHub ansehen↗9,992
  • litestar-org/litestarAvatar von litestar-org

    litestar-org/litestar

    8,302Auf GitHub ansehen↗

    Litestar is a high-performance Python ASGI web framework designed for building asynchronous APIs and web services. It functions as a type-safe toolkit that leverages Python type hints to provide automatic request validation and response serialization, while natively generating interactive API documentation based on the OpenAPI specification. The framework is distinguished by its integrated dependency injection system, which manages shared resources and resolves complex nested service chains directly within request handlers. It further organizes API development through class-based controllers

    Includes a dependency injection framework to decouple software components and manage object lifecycles.

    Pythonapiasgiasyncio
    Auf GitHub ansehen↗8,302
  • uber/ribsAvatar von uber

    uber/RIBs

    7,923Auf GitHub ansehen↗

    RIBs is a mobile architecture framework that structures applications around isolated, lifecycle-managed units of business logic called RIBs. Each RIB separates routing, business logic, and construction into distinct classes through the Router-Interactor-Builder pattern, with hierarchical dependency injection scoping dependencies per node and static analysis enforcing architectural rules at build time. The framework enforces automatic disposal of Rx subscriptions scoped to interactor lifecycles, blocking compilation when subscriptions lack proper disposal to prevent memory leaks. It supports v

    Implements a hierarchical dependency injection system scoping dependencies per business logic node.

    Kotlinandroidarchitectural-patternsarchitecture
    Auf GitHub ansehen↗7,923
  • yangzongzhuan/ruoyiAvatar von yangzongzhuan

    yangzongzhuan/RuoYi

    7,973Auf GitHub ansehen↗

    RuoYi is a Spring Boot admin framework designed for building enterprise applications. It provides a foundation for creating management dashboards and orchestrating systems using either monolithic or microservices architectures. The project features a low-code application generator that produces ready-to-compile source code and API documentation based on database table configurations. It implements a role-based access control system to map users and roles to specific menus and buttons for secure resource access. The framework includes capabilities for system health monitoring, real-time perfo

    Utilizes Spring's dependency injection to decouple business logic from infrastructure components.

    HTMLactivitibootstrapbootstrap-table
    Auf GitHub ansehen↗7,973
  • jamiebuilds/unstatedAvatar von jamiebuilds

    jamiebuilds/unstated

    7,728Auf GitHub ansehen↗

    Unstated is a React state management library that encapsulates application state and update logic within decoupled containers. It functions as a container-based state store, allowing state and business logic to be organized into standalone classes that trigger component re-renders when data changes. The project serves as a dependency injection framework, enabling specific state container instances to be supplied to the component tree. This mechanism supports the use of mock containers or stubs to facilitate controlled testing and custom configurations. The library covers global state managem

    Implements inversion of control to supply specific state container instances to the component tree.

    JavaScriptmanagementreactstate
    Auf GitHub ansehen↗7,728
  • swinject/swinjectAvatar von Swinject

    Swinject/Swinject

    6,708Auf GitHub ansehen↗

    Swinject is a dependency injection framework for Swift that manages object creation and wiring through a centralized container. It resolves dependencies by looking up registered service types at runtime, supporting iOS, macOS, and Linux platforms. The framework provides multiple injection patterns, including initializer injection where dependencies are passed through initializer parameters, property injection that sets resolved dependencies on stored properties after object creation, and method injection that calls methods with resolved dependencies as arguments. It handles complex dependency

    Provides a dependency injection framework that resolves and injects dependencies into Swift components using a container.

    Swiftdependency-injectiondi-containerinversion-of-control
    Auf GitHub ansehen↗6,708
  • derekyrc/mini-springAvatar von DerekYRC

    DerekYRC/mini-spring

    6,360Auf GitHub ansehen↗

    mini-spring is a Java dependency injection framework and inversion of control container. It manages the full lifecycle of beans, including instantiation, property population, and scope management, while providing a system for automating the wiring of components. The project implements a Java AOP framework that uses dynamic proxies to intercept method calls for cross-cutting logic. It also functions as a Java component scanner to automatically discover and register managed objects via annotations and as a Java event bus to decouple components through a publish-subscribe multicast system. The

    Provides a lightweight Java dependency injection framework for managing component wiring and lifecycles.

    Javamini-springspringspring-boot
    Auf GitHub ansehen↗6,360
  • microsoft/tsyringeAvatar von microsoft

    microsoft/tsyringe

    5,960Auf GitHub ansehen↗

    tsyringe ist ein TypeScript-Dependency-Injection-Container und ein Inversion-of-Control-Framework. Es entkoppelt Klassenimplementierungen von der Objekterstellung, indem es Abhängigkeiten und Objektlebenszyklen mithilfe von Decorators und Metadaten verwaltet. Das Framework verfügt über ein hierarchisches Containersystem, bei dem untergeordnete Container unabhängige Registrierungsbereiche beibehalten und für die Abhängigkeitsauflösung auf übergeordnete Container zurückgreifen können. Es bietet ein Provider-System, das die Objektlebensdauer durch Singleton- und Transient-Instanziierungsregeln steuert. Das System unterstützt rekursive Konstruktor-Injektion und handhabt zirkuläre Abhängigkeiten mithilfe von Proxies. Es umfasst Funktionen für Token-basiertes Registry-Mapping, Multi-Implementierungs-Auflösung und automatisierte Ressourcenfreigabe für Objekte, die Cleanup-Interfaces implementieren.

    Functions as a comprehensive inversion of control framework that decouples class implementations from their instantiation logic.

    TypeScriptcontainerdecoratorsdependency
    Auf GitHub ansehen↗5,960
  • santiq/bulletproof-nodejsAvatar von santiq

    santiq/bulletproof-nodejs

    5,770Auf GitHub ansehen↗

    Implementation of a bulletproof node.js API 🛡️

    Ships a constructor-based dependency injection pattern that makes services testable and reusable across contexts.

    TypeScriptagendajsboilerplateexpress
    Auf GitHub ansehen↗5,770
  • rrousselgit/providerAvatar von rrousselGit

    rrousselGit/provider

    5,258Auf GitHub ansehen↗

    Provider ist ein State-Management- und Dependency-Injection-Framework für Flutter. Es vereinfacht die gemeinsame Nutzung von Daten innerhalb eines Widget-Baums durch ein System, das die Injektion von Objekten und Services mit automatisiertem Lebenszyklus und Ressourcenbereinigung verwaltet. Das Framework zeichnet sich durch reaktive State-Container aus, die asynchrone Daten aus Streams und Futures direkt in den Komponentenbaum einbinden. Es unterstützt State-Derivation, wodurch neue Objekte basierend auf Werten aus mehreren Upstream-Providern konstruiert und synchronisiert werden können. Zur Performance-Optimierung bietet es selektive Rebuild-Filter und partielle State-Subscriptions, um Updates auf spezifische UI-Bereiche zu begrenzen. Die Bibliothek deckt breite Einsatzbereiche ab, darunter Interface-Mapping zur Entkopplung konkreter Implementierungen von abstrakten Interfaces sowie Provider-Komposition, um mehrere Dependency-Definitionen zu flachen und die Verschachtelung zu reduzieren. Zudem enthält sie Utilities für optionale Dependency-Resolution und die Erhaltung des App-Status während Hot-Reload-Zyklen.

    Implements an inversion of control framework to manage component dependencies and their lifecycles.

    Dart
    Auf GitHub ansehen↗5,258
Vorherige12Nächste
  1. Home
  2. Software Engineering & Architecture
  3. Dependency Injection Frameworks

Unter-Tags erkunden

  • External Service WrappersWrappers around system dependencies like timers and file systems to ensure determinism. **Distinct from Dependency Injection Frameworks:** Specifically targets wrapping system-level dependencies for test predictability, not general IoC frameworks.
  • Framework BridgingInjects managed dependencies into external framework functions using specific markers. **Distinct from Dependency Injection Frameworks:** Focuses on bridging different DI ecosystems via markers rather than general DI library implementation.