For modular framework components, the strongest matches are spring-projects/spring-framework (Spring Framework provides a comprehensive dependency injection container, modular), jeffijoe/awilix (Awilix is a JavaScript dependency injection container and service) and derekyrc/mini-spring (This repository provides a lightweight dependency injection framework and). prismlibrary/prism and fuzhengwei/small-spring round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Compare the best modular framework components on GitHub, ranked by stars and activity, and pick the right one for your architecture.
Spring Framework is an enterprise Java framework providing a comprehensive infrastructure for building server-side applications. It functions as a dependency injection container and a Java application framework designed to support scalable backend development through modular architecture. The project provides tools for aspect-oriented programming to intercept method calls using dynamic proxies, allowing the application of cross-cutting concerns such as security and transactions. It also includes a centralized system for managing object lifecycles and coordinating component wiring by injecting
Spring Framework provides a comprehensive dependency injection container, modular architecture, and event-driven capabilities, making it a definitive example of an enterprise application framework.
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
Awilix is a JavaScript dependency injection container and service locator that provides core modular architecture and dependency management, making it a useful building block for modular applications though focused primarily on DI rather than full micro-kernel orchestration.
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
This repository provides a lightweight dependency injection framework and inversion of control container featuring component scanning and event-driven communication, which serves as a focused building block for modular applications.
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
Prism is a component-based application framework providing dependency injection, an event bus, and a pluggable architecture for building loosely coupled XAML applications, fitting the modular framework intent well despite its platform focus.
Small-Spring is a simplified Java implementation of the Spring framework designed to study the internal architecture of inversion of control containers and dependency injection frameworks. It functions as a bean container that manages object lifecycles and resolves dependencies through automated instantiation and property injection. The project implements a mechanism for intercepting method calls using dynamic proxies to support aspect-oriented programming. It separates cross-cutting concerns from business logic by wrapping target objects to modify method executions. The system covers compon
Small-Spring implements a dependency injection container and inversion-of-control architecture inspired by Spring, serving as a modular application framework for studying and applying component-based design.
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
Tiny-spring is a lightweight Java inversion-of-control and aspect-oriented programming framework that delivers core dependency injection and component lifecycle management, making it a relevant modular application framework despite lacking a full plugin system or micro-kernel architecture.
ABP is an opinionated architectural framework for building enterprise software solutions using .NET and ASP.NET Core. It serves as a structural toolkit for implementing domain-driven design and microservices patterns, providing a modular enterprise architecture where functionality is organized into independent, pluggable modules. The platform is specifically designed to support multi-tenant SaaS architectures, isolating data and configurations for multiple independent customers within a single application instance. It provides enterprise boilerplate infrastructure and pre-configured templates
This opinionated architectural framework provides a robust modular structure for .NET applications, featuring built-in dependency injection, a comprehensive plugin-like module system, and event-driven communication suited for enterprise solutions.
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
Fx is a dependency injection and application lifecycle framework for Go that provides module-based component bundling and service container capabilities, though it lacks an explicit built-in event-driven communication system.
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
BeeHive is an iOS application framework built around modularity, featuring a dependency injection container, event bus, and service locator to organize code into independent modules.
Nest is a server-side framework for building scalable and maintainable enterprise-grade applications using TypeScript. It provides a modular architecture that organizes code into encapsulated, reusable modules, utilizing a dependency injection container to manage object lifecycles and resolve component dependencies through declarative metadata. The framework distinguishes itself through a platform-agnostic abstraction layer that decouples core logic from underlying HTTP servers, allowing for flexible implementation choices. It employs a middleware-based request pipeline that processes traffic
NestJS is a server-side application framework built around a modular architecture, dependency injection, and a service container, making it a comprehensive fit for this modular framework search.
Symfony is a full-stack web framework designed for building scalable and maintainable server-side applications. It provides a comprehensive collection of decoupled components that form a foundational architecture, centered on a robust dependency injection container and a configuration-driven routing engine. By organizing code into modular services, the framework ensures that application components remain testable and loosely coupled throughout the development lifecycle. The framework distinguishes itself through an event-driven kernel architecture that allows developers to intercept and modif
Symfony is a comprehensive full-stack web framework that delivers a robust service container, dependency injection, and an event-driven kernel architecture well-suited for modular application design.
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 framework distinguishes itself by offering hierarchical dependency scoping and lazy resolution, which allow for the automatic creation and disposal of objects based on the active module or page lifecycle. It also features
Modular is a framework for structuring Flutter applications with dependency injection and module-based organization, fitting the need for a modular architecture even though it is tailored to a specific UI ecosystem.
Laravel is a comprehensive full-stack web framework designed for building scalable server-side applications. It provides an integrated development environment that centers on an object-relational mapper for database abstraction, a robust routing system, and a sophisticated service container for dependency injection. The framework is built to handle complex application requirements through a modular architecture that emphasizes convention over configuration. What distinguishes Laravel is its deep integration of background processing and event-driven communication. It features a task queue orch
Laravel provides a robust service container, event-driven communication, and a modular component structure, making it a flexible web framework although it is tailored specifically for server-side PHP development rather than a generic application framework.
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
Loopback Next is a TypeScript-based API framework featuring a core dependency injection container and service bindings, making it a modular choice for building extensible applications even though its primary focus is REST APIs rather than general-purpose component systems.
Aurelia is a JavaScript web framework and component-based UI system used to build applications for browser, mobile, and desktop environments. It functions as a frontend application orchestrator and data binding library that synchronizes application state with the view to render dynamic content and process user input. The framework implements a component architecture that pairs logic classes with HTML templates to create reusable visual elements. It utilizes a dependency injection container to manage object lifecycles and a modular composition model that aggregates independent functional packa
Aurelia provides a component-based architecture with dependency injection and a modular composition model, making it a flexible choice for structured web application development.
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
Quarkus is a Kubernetes-native Java application framework built with a strong extension and build-time modular architecture that supports dependency injection, though it leans heavily toward cloud-native microservices rather than a general-purpose micro-kernel.
Vue is a progressive JavaScript framework designed for building modular, reactive user interfaces. It utilizes a component-based architecture that allows developers to encapsulate logic, templates, and styles into reusable units. At its core, the framework employs a virtual DOM renderer and a proxy-based reactivity system to synchronize application state with the document object model efficiently. What distinguishes this framework is its focus on developer experience and flexibility. It supports a single-file component format that colocalizes related concerns, alongside a powerful composition
Vue is a progressive JavaScript framework featuring a component-based architecture and reactive event-driven system, though it focuses primarily on user interfaces rather than a full backend service container or micro-kernel architecture.
Angular is a platform for building web applications using a component-based architecture. It provides a comprehensive suite of tools for managing encapsulated UI units, including hierarchical dependency injection, a declarative template system, and fine-grained reactivity through signals. The framework supports complex application requirements such as client-side routing, form management, and internationalization. The project includes a command-line interface for scaffolding and build automation, alongside a testing ecosystem for unit and integration verification. It offers multiple rendering
Angular is a robust component-based web framework featuring hierarchical dependency injection and modular design, though its full-stack application structure differs slightly from a lightweight micro-kernel architecture.
Meteor is a full-stack JavaScript application platform and real-time application server. It provides a unified development environment for building web and mobile applications using a single language for both the client and server. The platform functions as a cross-platform app framework, allowing a single codebase to be deployed across web, iOS, Android, and desktop environments. It differentiates itself through a real-time server that automatically synchronizes data between servers and clients to enable live updates. The system includes a unified development command-line interface to manag
Meteor provides a full-stack JavaScript application platform with real-time capabilities and reactive programming, though it is more traditionally known as an isomorphic web and mobile framework rather than a micro-kernel component system.
Bit is a component-based development platform and monorepo orchestrator used to build, manage, and share reusable software components across projects. It functions as a system for modular software architecture, providing a component registry for publishing and distributing independent software modules via remote scopes. The platform distinguishes itself through lane-based versioning, which isolates feature development into parallel tracks for comparison and merging. It utilizes a scope-based namespace registry to organize components into hierarchical groups and employs environment-driven comp
Bit is a component-based development platform for building, sharing, and orchestrating independent software components across projects, aligning well with your search for a modular application framework.
F Prime is a component-based framework designed for the development and deployment of embedded and spaceflight software. It provides a modular architecture that decouples software logic from communication interfaces, allowing developers to define system structures through a domain-specific modeling language. This model-based approach enables automated code generation, ensuring consistency across complex system topologies while maintaining strict interface contracts between software modules. The framework distinguishes itself through its integrated build system and ground data operations suite
F Prime is a component-based application framework designed for modular embedded and spaceflight software, offering a structured modeling approach that aligns well with the architecture requirements of this search.
Modular is a framework extension designed to organize large Laravel applications into independent, maintainable modules. It provides a structured approach to codebase management by enforcing namespace isolation and directory mapping, allowing developers to group related features within a single project while maintaining consistent architectural conventions. The tool distinguishes itself through automated discovery and registration mechanisms that detect local modules without requiring manual configuration. By integrating with the framework's native service provider discovery and autoloader, i
Modular is a PHP framework extension that brings modular design and namespace isolation to Laravel applications, fulfilling the core need for modularity and component-based organization.
This project provides a structured template for building enterprise applications using a modular monolith architecture. It demonstrates how to organize complex business logic into independent, domain-specific modules that remain contained within a single deployment unit. The architecture enforces strict boundaries between components to minimize coupling and complexity. It utilizes domain-driven design principles to map software components directly to real-world business concepts, ensuring that logic remains independent of infrastructure concerns. Communication between these isolated modules i
This repository provides a modular application template focused on domain-driven design and decoupled modules, offering a solid architectural starting point even though it is structured as a sample application rather than a general-purpose framework.
This project is a full-stack web framework built on PHP that provides a structured environment for developing complete web applications. It utilizes a model-view-controller architecture to separate application data, user interface, and control logic, facilitating the management of complex application requirements. The framework distinguishes itself through a suite of integrated tools designed to unify server-side logic and client-side interfaces. It supports isomorphic code execution to maintain consistent behavior across the stack and employs server-side data hydration to populate the client
This project is a full-stack PHP web framework that provides a structured environment for building applications, though it is a traditional MVC framework rather than a modular micro-kernel system.
Modular web framework for Elixir
Sugar is a modular web framework for Elixir designed around component and extension principles, though it lacks some of the advanced enterprise features like a micro-kernel or heavy dependency injection containers.
Kigs framework is a C++ modular multipurpose cross platform framework.
Kigs is a modular, cross-platform C++ framework designed around component-based principles and flexibility, fitting the application framework category well despite lacking some specific enterprise patterns like dependency injection.
| المستودع | النجوم | اللغة | الترخيص | آخر تحديث |
|---|---|---|---|---|
| spring-projects/spring-framework | 60.1K | Java | Apache-2.0 | |
| jeffijoe/awilix | 4.1K | TypeScript | mit | |
| derekyrc/mini-spring | 6.4K | Java | Apache-2.0 | |
| prismlibrary/prism | 6.8K | C# | NOASSERTION | |
| fuzhengwei/small-spring | 4.9K | Java | Apache-2.0 | |
| code4craft/tiny-spring | 4.1K | Java | Apache-2.0 | |
| abpframework/abp | 14.3K | C# | LGPL-3.0 | |
| uber-go/fx | 7.4K | Go | mit | |
| alibaba/beehive | 4.3K | Objective-C | GPL-2.0 | |
| nestjs/nest | 75.9K | TypeScript | MIT |