container-interop / service-provider
Promoting container interoperability through standard service providers
Installs: 355 028
Dependents: 87
Suggesters: 2
Security: 0
Stars: 72
Watchers: 22
Forks: 10
Open Issues: 4
Requires
- psr/container: ^1.0 || ^2.0
This package is auto-updated.
Last update: 2024-12-14 11:52:50 UTC
README
This project attempts to define a common standard for service providers, aka "bundles" or "modules" in various frameworks.
Service providers are classes that provide service definitions to a PSR-11 container.
The PSR depends on the PSR-11 Container Interface. Service providers operate on PSR-11 compatible containers.
⚠️ Work in progress
the project is currently experimental and is being tried in frameworks, containers and modules until considered viable. Until a 1.0.0 release, the code in this repository is not stable. Expect breaking changes between versions such as
0.1.x
and0.2.0
.
👉 Refer to the current PSR draft for the PSR proposal itself.
🧐 Refer to the PSR meta document for the history and reasoning behind this proposal.
💬 Join us to review open issues or participate in ongoing discussions.
Compatible projects
Projects consuming v0.4
service providers
- Laravel service provider bridge: Use container-interop's service-providers into any Laravel application.
- Simplex: A Pimple 3 fork with full container-interop compliance and cross-framework service-provider support.
- Service provider bridge bundle: Use container-interop's service-providers into a Symfony container.
- Yaco: A compiler that generates container-interop compliant containers. Yaco can consume service-providers.
Packages providing v0.4
service providers
- DBAL Module: A module integrating Doctrine DBAL in an application using a service provider.
- Doctrine Annotations Module: A service provider for Doctrine's annotation reader.
- Glide Module: A module integrating Glide in an application using a service provider.
- PSR-6 to Doctrine cache bridge module: A service provider providing a Doctrine cache provider wrapping a PSR-6 cache pool.
- Slim-framework Module: A module integrating Slim framework v3 using a service provider.
- Stash Module: A service provider for the Stash PSR-6 caching library.
- Stratigility Module: A service provider for the Stratigility PSR-7 middleware.
- Twig Module: A service provider for the Twig templating library.
- Whoops PSR-7 Middleware Module: a service provider for the Whoops PSR-7 middleware.