{"repo":"ecotoneframework/ecotone","free":true,"listed":false,"github":"https://github.com/ecotoneframework/ecotone","clone":"git clone https://github.com/ecotoneframework/ecotone.git","description":"Ecotone shifts the focus to the business code. In order to make it happen, enables Message-Driven Architecture with DDD, CQRS, Event Sourcing in PHP.","language":"PHP","stars":571,"topics":["ecotone","php","ddd","cqrs","event-sourcing","symfony","laravel"],"license":null,"category":"api-integrations-sdks","readme_excerpt":"This is Read Only Repository To contribute make use of Ecotone-Dev repository. Ecotone — the PHP architecture layer that grows with your system, without rewrites From #[CommandHandler] on day one, to event sourcing, sagas, outbox, and distributed messaging at scale — one package, same codebase, no forced migrations between growth stages. Declarative PHP 8 attributes on the classes you already have. No base classes, no bus wiring, no retry config. Built on Enterprise Integration Patterns — the same pattern language behind Spring Integration, Axon, NServiceBus, and Apache Camel — brought to PHP as attribute-driven code. Visit ecotone.tech for the full overview. --- See what it looks like That's the entire setup. No bus configuration. No handler registration. No retry config. No serialization wiring. Ecotone reads your attributes and handles the rest: - Command, Query, and Event Bus — wired automatically from your attributes - Event routing — handlers subscribe to events without manual wiring - Async execution — #[Asynchronous('notifications')] routes to RabbitMQ, SQS, Kafka, Redis, or DBAL - Failure isolation — each event handler gets its own copy of the message, so one handler's failure never blocks another - Retries and dead letter — failed messages retry automatically; permanently failed ones go to a dead letter queue you can inspect and replay - Tracing — OpenTelemetry traces every message across sync and async flows --- Test exactly the flow you care about Extract a specif","default_branch":null,"files":null,"tree":[],"storefront":"/r/ecotoneframework","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ecotoneframework/ecotone/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}