Ecotone embrace the concept of Business-Oriented Architecture. BOA’s fundamental principle is about making business logic the primary citizen in our applications. It shifts the focus from technical details to the actual business processes.
Ecotone promotes way of developing PHP Applications that have it's roots in Message-Driven Architecture combined with Domain Driven Design.
It help deliver reliable business focused software quickly, using powerful concepts like Messaging based on Enterprise Integration Patterns, CQRS with Message Bus, and well known DDD building blocks like Aggregates, Sagas and Event Sourcing.
{% hint style="success" %}
Ecotone forms a bridge between people with and without DDD experience, so they can understand each other in practical way. By introducing higher level patterns and making our system scalable and resilient by default, it creates space and time for everyone in the team to explore the business part of the system.
As a result, it lowers the bar to create environment, in which the idea of full focus on the Business becomes easy to follow and practice.
{% endhint %}
Ecotone's enables Business Oriented Architecture by introducing the three main pillars:
- Resilient Messaging - At the heart of Ecotone lies a resilient messaging system that enables loose coupling, fault tolerance, and self-healing capabilities.
- Declarative Configuration - Introduces declarative programming which simplifies development, reduces boilerplate code, and promotes code readability. It empowers developers to express their intent clearly, resulting in more maintainable and expressive codebases.
- Building Blocks - Building blocks like Message Handlers, Aggregates, Sagas, facilitate the implementation of the business logic. By making it possible to bind Building Blocks with Resilient Messaging, Ecotone makes it easy to build and connect even the most complex business workflows.
{% hint style="success" %} To start with Ecotone there is no need for big impact refactor. You may introduce it in your existing code base and start using it from day one, even for a single feature.
Ecotone works out of the box with popular PHP frameworks like Symfony, Laravel and can be run stand alone or with any other framework (e.g. Laminas, CodeIgniter, Magento) using Ecotone Lite. {% endhint %}
Check how to install Ecotone for Symfony, Laravel or Lite.