Skip to content

tandev/ecotone-dev

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,138 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Github Actions Latest Stable Version License Total Downloads PHP Version Require

Ecotone is 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.

class OrderService
{
    #[CommandHandler]
    public function placeOrder(PlaceOrder $command, EventBus $eventBus): void
    {
        $eventBus->publish(new OrderWasPlaced($command->orderId));
    }
}

class NotificationService
{
    #[Asynchronous('notifications')]
    #[EventHandler]
    public function whenOrderPlaced(OrderWasPlaced $event, NotificationSender $sender): void
    {
        $sender->sendOrderConfirmation($event->orderId);
    }
}

Every flow — sync, async, sagas, projections — runs through the same messaging pipeline in production and in tests. Swap the in-memory channel for RabbitMQ, Kafka, SQS, Redis, or DBAL in production; the test shape never changes.

Topic deep dives

  • Durable Workflows in PHP — long-running processes, sagas, orchestrators, event-sourced replay on your existing DB + broker
  • Event Sourcing in PHP — built-in event store, projections (catch-up, partitioned, streaming), blue-green rebuilds, PII encryption end-to-end
  • Asynchronous Communication — message channels, retries, outbox, delayed messages, scheduling, dead letter with replay
  • Domain-Driven Design in PHP — aggregates, repositories, domain events, sagas — all via attributes
  • Orchestration Layer — declarative multi-step workflows, EIP routing, dynamic step lists
  • Microservices — Distributed Bus, Service Map, multi-broker single topology

Visit ecotone.tech for the full overview.

Works with Symfony, Laravel, or any PSR-11 framework via Ecotone Lite.

Getting started

The quickstart guide in the reference documentation is the fastest path to your first handler. Read more on the Ecotone Blog.

AI-Ready by design

Declarative attributes mean less infrastructure code for your coding agent to read and less boilerplate for it to generate — smaller context, faster iteration, more accurate results.

  • MCP Server: https://docs.ecotone.tech/~gitbook/mcp — Install in VSCode
  • Agentic Skills: Ready-to-use skills that teach any coding agent to correctly write handlers, aggregates, sagas, projections, and tests
  • LLMs.txt: ecotone.tech/llms.txt
  • Context7: Available via @upstash/context7-mcp

Learn more: AI Integration Guide

Contribution

Read Read me Development Context for information about the Monorepo. Visit Ecotone's Documentation for more information about contributing.

Feature requests and issue reporting

Use issue tracking system for new feature request and bugs. Please verify that it's not already reported by someone else.

Contact

If you want to talk or ask questions about Ecotone

Support Ecotone

If you want to help building and improving Ecotone consider becoming a sponsor:

Tags

PHP, DDD, CQRS, Event Sourcing, Sagas, Projections, Workflows, Outbox, Symfony, Laravel, Service Bus, Event Driven Architecture

About

Ecotone Framework Development - fork

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE-ENTERPRISE

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • PHP 100.0%