the-firehub-project / module
Modular application composition and lifecycle integration for The FireHub Project.
Fund package maintenance!
Requires
- php: ^8.5
- the-firehub-project/core-standard: dev-develop
- the-firehub-project/runtime: >=0.1.0 <1.0.0
Requires (Dev)
- phpstan/phpstan: ^2.0
- the-firehub-project/phpstan-rules: dev-develop
- the-firehub-project/testing: dev-develop
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-22 08:19:55 UTC
README
FireHub Module
FireHub Module provides modular application composition and lifecycle integration for The FireHub Project. It enables applications to organize related functionality into cohesive, reusable modules while maintaining clear architectural boundaries and separation of concerns.
Built around the contracts defined by FireHub Core, FireHub Module provides the mechanisms for module registration, dependency coordination, initialization ordering, and integration with the application lifecycle. Modules can contribute services, configuration, and lifecycle behavior without introducing independent application runtimes.
FireHub Module serves as an application composition and orchestration component within the FireHub ecosystem. It supports Clean Architecture and Domain-Driven Design by enabling applications to assemble independent functional units while preserving centralized lifecycle management through FireHub Application and execution infrastructure through FireHub Kernel.
Repository Purpose
FireHub Module is the modular application composition and orchestration component of the FireHub ecosystem.
Built on the contracts provided by FireHub Core, it supplies the mechanisms required to organize, register, coordinate, and integrate functional modules within FireHub applications.
The purpose of this repository is to provide a consistent modular architecture while preserving separation of concerns between application composition, dependency management, and runtime execution.
The Module architecture is designed to support:
- Modular organization of application functionality
- Registration and management of application modules
- Module dependency declaration and resolution
- Dependency ordering and circular dependency detection
- Integration with application initialization and disposal
- Module-specific service registration and configuration
- Shared application dependency injection infrastructure
- Reusable and independently developed functional modules
- Predictable module initialization and disposal ordering
- Compatibility with Clean Architecture and Domain-Driven Design
FireHub Module follows the architectural principles of The FireHub Project by separating responsibilities between module composition, application lifecycle orchestration, dependency injection, and runtime execution.
Modules do not own independent application kernels or lifecycle state machines. Instead, they participate in the lifecycle of their hosting application through well-defined initialization and disposal mechanisms.
The Module component does not control application execution, dependency injection scopes, or kernel lifecycle transitions. These responsibilities remain with FireHub Application, FireHub Container, and FireHub Kernel.
This separation enables applications to organize functionality into modular units without introducing unnecessary runtime complexity or coupling between modules and execution infrastructure.
Security
For security reporting and guidelines, please refer to our SECURITY.md file.
Community
- Be sure to review the Code of Conduct.
- Read a Contributing file to see how you can contribute to this project.
- Read our Security policy file to see how you can report a vulnerability.
- Review the project Governance model, including roles, decision-making, RFC process, and releases.
Support
For help with FireHub products, please refer to the following resources:
- General questions & discussions: GitHub Discussions
- Bug reports & issues: Support
- Documentation & guides: FireHub Docs
- Commercial support (Pro/Enterprise): contact your account manager
Authors and Contributors
Brand & Trademark
Please refer to TRADEMARK.md and BRAND.md for guidelines on FireHub branding.
Architecture guidelines, design principles, and ecosystem documentation are available within the FireHub Project organization.
License
This software is licensed under the Apache-2.0 License.
For more details, read the full license here.