application.yml you can #[Autowired] its templates and clients anywhere in your code.
Choose a library
Match your use case to a library and package.Grouped by domain
Data
Client libraries that connect to external data stores.Doctrine ORM & DBAL
Doctrine entities, DBAL connections, and multi-tenant datasource routing.
Redis Client
PhpRedis templates for singles, clusters, arrays, sentinels, and Dynomite token rings.
Memcached Client
Memcached and Memcache extension clients for lightweight remote caching.
Messaging
Apache Kafka
Producer and consumer integration for event streaming pipelines.
Amazon SQS
SQS producer and consumer with IAM role and EKS IRSA support.
Storage & search
Amazon S3
Upload, download, and manage S3-compatible object storage from any bean.
OpenSearch
OpenSearch indexing and querying with basic auth or AWS SigV4 signing.
Distributed systems
Service Discovery
Register and discover services via Consul or Netflix Eureka.
Distributed Tasks (DTCE)
Cross-node background task orchestration with pluggable queue and store backends.
Embedded in-memory servers EXPERIMENTAL
Libraries where the framework launches and manages the server process as part of the app lifecycle.Winter Memdb
Auto-start Redis, Apache Ignite, Memcached, or Hazelcast alongside the application.
Planned
Security
Reserved for the upcoming security module. Not yet released; see the page for interim guidance.
Installation patterns
Winter libraries are distributed as three separate composer packages so you install only what you need:Install patterns
The library composer files do not currently declare
suvera/winter-boot as a dependency, so you must install it explicitly. Every library uses framework classes at runtime.PHP extension matrix
Some libraries require additional PHP extensions. Install them before enabling the module.Enabling a library
Every library plugs in through the same module system. Declare the module class in yourapplication.yml under modules::
application.yml