Modular is a framework for the Flutter ecosystem that provides a structured approach to application architecture through module-based dependency injection and navigation management. It enables developers to organize complex codebases into independent, decoupled units, facilitating the management of shared services and object lifecycles within specific application scopes.
The main features of flutterando/modular are: Dependency Injection Frameworks, Dependency Injection, Routing and Navigation, Module-Level Injection, Mobile App Architectures, Dependency Lifecycle Management, Lazy Providers, Hierarchical Scopes.
Open-source alternatives to flutterando/modular include: ets-labs/python-dependency-injector — This is a dependency injection framework and inversion of control container for Python. It decouples object creation… insertkoinio/koin — Koin is a dependency injection framework for Kotlin applications that manages object lifetimes and resolves… samber/do — This project is a type-safe dependency injection framework for Go that manages application lifecycles and injects… swinject/swinject — Swinject is a dependency injection framework for Swift that manages object creation and wiring through a centralized… jeffijoe/awilix — Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized… microsoft/tsyringe — tsyringe is a TypeScript dependency injection container and inversion of control framework. It decouples class…
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
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
This project is a type-safe dependency injection framework for Go that manages application lifecycles and injects dependencies into structures using reflection and metadata tags. It functions as a service lifecycle manager and an interface binding library to decouple service consumption from concrete implementations. The framework utilizes a hierarchical service container, organizing services into a tree of nested scopes where child containers inherit dependencies from their ancestors. It includes a dependency graph visualizer for inspecting relationships and invocation chains, as well as a s
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