awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to php-fig/container

Open-source alternatives to Container

30 open-source projects similar to php-fig/container, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Container alternative.

  • symfony/contractssymfony avatar

    symfony/contracts

    3,941View on 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

    PHPabstractionscomponentcontracts
    View on GitHub↗3,941
  • jeffijoe/awilixjeffijoe avatar

    jeffijoe/awilix

    4,088View on GitHub↗

    Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized system for registering and resolving services, decoupling application components by automating how dependencies are created and passed to the functions or classes that require them. The framework features an automatic module loader that scans the filesystem using glob patterns to register dependencies based on filenames and exports. It supports parameter-name-based injection and proxy-based resolution to manage how dependencies are delivered to constructors and functions. The s

    TypeScriptawilixdependency-injectionioc
    View on GitHub↗4,088
  • jonataslaw/getxjonataslaw avatar

    jonataslaw/getx

    11,181View on GitHub↗

    GetX is a comprehensive state management framework for Flutter that provides a toolkit for managing application state, dependency injection, and routing without requiring build context. It serves as a core architectural system for reactive state management, navigation, service location, and multi-language theme support. The project is distinguished by its ability to handle context-free navigation and the use of observable variables that automatically trigger user interface updates. It features a dependency injection container with lazy loading and automated memory management, alongside a rout

    Dart
    View on GitHub↗11,181

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • uber-go/fxuber-go avatar

    uber-go/fx

    7,354View on 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

    Goapp-frameworkdependency-injectionframework
    View on GitHub↗7,354
  • dotnet/aspnetcore.docsdotnet avatar

    dotnet/AspNetCore.Docs

    13,115View on GitHub↗

    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

    C#aspaspnetaspnet-core
    View on GitHub↗13,115
  • derekyrc/mini-springDerekYRC avatar

    DerekYRC/mini-spring

    6,360View on GitHub↗

    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

    Javamini-springspringspring-boot
    View on GitHub↗6,360
  • loopbackio/loopback-nextloopbackio avatar

    loopbackio/loopback-next

    5,095View on GitHub↗

    LoopBack Next is a Node.js API framework used for building REST and multi-protocol APIs. It functions as an OpenAPI server implementation that can either generate machine-readable specifications from code or produce implementation controllers and models from existing specifications. The framework distinguishes itself through a central dependency injection container and a repository-pattern data access layer. This architecture decouples application logic from component construction and persistent storage, allowing for a pluggable system where data sources and business logic are isolated throug

    TypeScript
    View on GitHub↗5,095
  • code4craft/tiny-springcode4craft avatar

    code4craft/tiny-spring

    4,089View on GitHub↗

    tiny-spring is a Java inversion of control container and aspect-oriented programming framework. It provides a system for managing object lifecycles and dependency injection to decouple application components. The project features a bytecode proxy generator that enables method interception and behavioral modification for classes that do not implement interfaces. It uses pointcut expressions to match specific classes and methods for the execution of cross-cutting logic via dynamic proxies. The framework manages singleton components and resolves object dependencies using lazy initialization. Ap

    Java
    View on GitHub↗4,089
  • facebookarchive/injectfacebookarchive avatar

    facebookarchive/inject

    1,408View on GitHub↗

    Inject is a dependency injection framework for Go that automates the assembly of complex object graphs. By leveraging runtime reflection, the library dynamically inspects object structures to resolve and populate required dependencies, decoupling component initialization from business logic. The framework manages object lifecycles through both singleton and factory-based provisioning. It maintains a central registry to share singletons across an application for consistent state, while also supporting the creation of unique, private instances to isolate state between different components. To

    Go
    View on GitHub↗1,408
  • typestack/typeditypestack avatar

    typestack/typedi

    4,242View on GitHub↗

    TypeDI is a TypeScript dependency injection container and inversion of control tool. It functions as a centralized registry and service locator that manages object instantiation and decouples component dependencies using type inference and decorators. The project provides scoped dependency management to isolate service instances within specific contexts, preventing data leakage between different execution flows. It supports flexible service resolution through the use of type-safe tokens and the ability to map unique identifiers or class constructors to specific service instances. The contain

    TypeScriptdependency-injectioninversion-of-controlioc
    View on GitHub↗4,242
  • quarkusio/quarkusquarkusio avatar

    quarkusio/quarkus

    15,479View on GitHub↗

    Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program

    Javacloud-nativehacktoberfestjava
    View on GitHub↗15,479
  • litestar-org/litestarlitestar-org avatar

    litestar-org/litestar

    8,302View on GitHub↗

    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

    Pythonapiasgiasyncio
    View on GitHub↗8,302
  • zendframework/zendframeworkzendframework avatar

    zendframework/zendframework

    5,441View on GitHub↗

    Zend Framework is a comprehensive set of decoupled components for building modular, event-driven web applications. It implements an MVC architecture to separate business logic from the user interface and provides a structured request-handling system through a sequential middleware pipeline. The project features a factory-driven dependency injection container to automate object instantiation and manage class lifecycles. It also includes a comprehensive security suite for verifying user identities and restricting resource access using access control lists and role-based access control adapters.

    View on GitHub↗5,441
  • sergdort/cleanarchitecturerxswiftsergdort avatar

    sergdort/CleanArchitectureRxSwift

    4,100View on GitHub↗

    This project is a Swift iOS architecture template that implements the Clean Architecture pattern. It organizes software into distinct layers to decouple business rules from external frameworks, user interfaces, and infrastructure to improve testability and maintenance. The template incorporates Domain Driven Design to isolate core business logic and utilizes a modular application structure to divide features into independent modules. It employs the Coordinator pattern to remove routing logic from view controllers and a dependency injection framework to ensure components remain independent and

    Swift
    View on GitHub↗4,100
  • alibaba/beehivealibaba avatar

    alibaba/BeeHive

    4,339View on GitHub↗

    BeeHive is a modular architecture framework for iOS applications. It provides a dependency injection container, an event bus middleware, a module lifecycle manager, and a service locator to organize an application into independent functional modules. The framework distinguishes itself by utilizing asynchronous module loading to reduce application startup time and prevent main thread blocking. It employs macro-driven automatic module registration to decouple instantiation from application logic and uses protocol-based service mapping to resolve dependencies without requiring direct imports. T

    Objective-Cbeehiveioslifecycle
    View on GitHub↗4,339
  • prismlibrary/prismPrismLibrary avatar

    PrismLibrary/Prism

    6,794View on GitHub↗

    Prism is a XAML application framework and MVVM architectural framework designed to build loosely coupled and testable applications across WPF, Xamarin Forms, and WinUI. It serves as a structural pattern implementation that separates business logic from the user interface to improve maintainability and testing. The framework provides a XAML event bus for exchanging data and triggering actions between independent components without direct coupling. It also functions as a dependency injection integrator, bridging external inversion-of-control containers to manage service delivery across multiple

    C#c-sharphacktoberfestmvvm
    View on GitHub↗6,794
  • symfony/dependency-injectionsymfony avatar

    symfony/dependency-injection

    4,166View on GitHub↗

    This project is a PHP dependency injection container and framework designed to centralize object construction and manage class dependencies. It serves as a service container and configuration registry that automates object lifecycles and manages references between services to decouple application components from their specific dependencies. The system handles the instantiation and wiring of objects through both constructor and setter injection. It provides a centralized registry for storing reusable parameters and service definitions, which prevents the hardcoding of settings across the appli

    PHP
    View on GitHub↗4,166
  • alexeymezenin/laravel-best-practicesalexeymezenin avatar

    alexeymezenin/laravel-best-practices

    12,299View on 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

    View on GitHub↗12,299
  • nonebot/nonebot2nonebot avatar

    nonebot/nonebot2

    7,582View on GitHub↗

    Nonebot2 is an asynchronous Python framework for building event-driven chatbots across multiple messaging platforms. It centers on a non-blocking event bus and a driver-based adapter system that unifies different messaging protocols into a single consistent interface. The framework utilizes a modular plugin architecture, allowing for the discovery and loading of third-party extensions to add new event handlers and system capabilities. It distinguishes itself with a type-annotation based dependency injection system that automatically resolves and provides required service objects to handlers a

    Pythonbotchatbotcqhttp
    View on GitHub↗7,582
  • jonataslaw/getjonataslaw avatar

    jonataslaw/get

    11,181View on GitHub↗

    Get is a framework for Flutter that provides a comprehensive toolkit for dependency injection, internationalization, route management, and reactive state management. It includes a UI utility kit for handling themes, adaptive layouts, and the display of overlays such as snackbars and dialogs. The framework is distinguished by its ability to perform navigation and overlay management without requiring a build context. It also features a dependency injection container that manages the memory lifecycle of controllers and services, and a localization system that maps keys to strings to update appli

    Dart
    View on GitHub↗11,181
  • dodyg/practical-aspnetcoredodyg avatar

    dodyg/practical-aspnetcore

    10,382View on GitHub↗

    This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro

    C#asp-net-coreaspnet-coreaspnetcore
    View on GitHub↗10,382
  • patricklouys/no-framework-tutorialPatrickLouys avatar

    PatrickLouys/no-framework-tutorial

    1,556View on GitHub↗

    This project is an educational guide focused on building modular web applications using native PHP features. It demonstrates how to construct a functional application architecture from the ground up without relying on external third-party frameworks. The guide centers on implementing core architectural patterns, including a request router that maps incoming HTTP paths to specific controller logic and a dependency injection container that manages object lifecycles and class requirements. By decoupling components through automated dependency resolution, the project emphasizes maintainability an

    clean-codedependency-injectionframework-agnostic
    View on GitHub↗1,556
  • google/guicegoogle avatar

    google/guice

    12,734View on GitHub↗

    Guice is a Java dependency injection framework and component container. It automates object wiring by mapping interfaces to implementations via a central injector, removing the need for manual factory patterns and constructor calls. The framework provides specialized support for aspect-oriented programming, allowing for the interception and modification of method execution to implement shared cross-cutting concerns. It also functions as a persistence manager to coordinate transaction boundaries and manage the lifecycle of entity managers within a dependency-injected environment. Its core cap

    Java
    View on GitHub↗12,734
  • php-fig/logphp-fig avatar

    php-fig/log

    10,440View on GitHub↗

    This project is a standardized specification for logging APIs in PHP. It defines a common logging interface and a set of severity levels to ensure ecosystem-wide compatibility between different logging implementations. The project focuses on PHP library interoperability by providing a vendor-neutral interface. This allows various software packages to record application events consistently without being tied to a specific logging vendor, adhering to the PSR-3 implementation standard. The specification covers architectural primitives for logging abstractions, including implementation-agnostic

    PHPpsr-3
    View on GitHub↗10,440
  • adonisjs/coreadonisjs avatar

    adonisjs/core

    18,990View on GitHub↗

    This is a TypeScript web framework and Node.js backend framework used to build web applications and API servers. It serves as a server-side application toolkit providing a structured environment for managing HTTP routing, request parsing, and application configuration. The framework features a dependency injection container to deliver required objects between application components, decoupling internal logic. It includes built-in tools for server-side data security, such as cryptographic drivers for hashing sensitive data and encrypting application data at rest. The project covers broad capa

    TypeScript
    View on GitHub↗18,990
  • liangxiegame/qframeworkliangxiegame avatar

    liangxiegame/QFramework

    5,163View on GitHub↗

    QFramework is a Unity game architecture framework designed to separate presentation, system, and data logic. It implements a layered software architecture to manage complex game states and provides a game engine utility library to reduce boilerplate code. The framework is centered on the Command Query Responsibility Segregation pattern, which separates data modification commands from data retrieval queries. It utilizes a dependency injection container to manage the lifecycles and resolution of singletons and modular components, alongside an event-driven system for state synchronization to pre

    C#frameworksgame-devgodot
    View on GitHub↗5,163
  • square/daggersquare avatar

    square/dagger

    7,281View on GitHub↗

    Dagger is a compile-time dependency injection framework for Java and Android that automates object creation and lifecycle management. It functions as a static dependency injector and graph validator, resolving object requirements during the build process to avoid runtime reflection and prevent crashes caused by missing bindings. The framework distinguishes itself by using static analysis and code generation to produce factory classes at build time. It employs qualifier-based type differentiation to manage multiple implementations of the same type and provides scope-based lifecycle management

    Java
    View on GitHub↗7,281
  • enterprisequalitycoding/fizzbuzzenterpriseeditionEnterpriseQualityCoding avatar

    EnterpriseQualityCoding/FizzBuzzEnterpriseEdition

    23,275View on GitHub↗

    FizzBuzzEnterpriseEdition is an enterprise-grade software architecture framework designed to demonstrate the application of complex design patterns to fundamental logic flows. It utilizes a modular component architecture to decouple business logic from infrastructure concerns, employing dependency injection containers to manage object lifecycles and enforce strict interface-based contracts between system units. The project distinguishes itself by applying rigorous enterprise software design principles to the generation of FizzBuzz sequences. By externalizing component wiring and application b

    Java
    View on GitHub↗23,275
  • roboguice/roboguiceroboguice avatar

    roboguice/roboguice

    3,722View on GitHub↗

    RoboGuice is a dependency injection library based on Google Guice, specifically designed for Android applications. It functions as an annotation-processed dependency injection container that automates the delivery of system services and application dependencies into Android components to reduce boilerplate code. The project uses annotation processing to optimize application startup times and initialization. By utilizing compile-time bytecode generation, it reduces the overhead typically associated with runtime reflection during the initialization of the dependency container. The framework ma

    Java
    View on GitHub↗3,722
  • sudheerj/angular-interview-questionssudheerj avatar

    sudheerj/angular-interview-questions

    4,872View on GitHub↗

    This project is a curated collection of technical interview questions and detailed answers designed for professional software engineering roles. It serves as an Angular framework study resource and interview guide for developers preparing for frontend engineering assessments. The resource covers core architectural patterns including component-based view architecture, hierarchical dependency injection, and declarative template binding. It also addresses implementation details regarding observable-driven data streams and the use of directives for DOM manipulation. Additional content focuses on

    angularangular-interview-questionsangular6
    View on GitHub↗4,872