ecotone / pdo-event-sourcing
PDO-backed Event Store for Ecotone — event-sourced aggregates, projections, upcasting, and streaming projections (Kafka, RabbitMQ).
Fund package maintenance!
Requires
- ecotone/dbal: ~1.309.3
- prooph/pdo-event-store: ^1.16.3
Requires (Dev)
- doctrine/orm: ^2.11|^3.0
- doctrine/persistence: ^2.5|^3.4
- phpstan/phpstan: ^1.8
- phpunit/phpunit: ^10.5|^11.0
- symfony/cache: ^6.4|^7.0|^8.0
- symfony/console: ^6.4|^7.0|^8.0
- symfony/process: ^6.4|^7.0|^8.0
- wikimedia/composer-merge-plugin: ^2.1
- v1.x-dev
- dev-main / 1.309.3.x-dev
- 1.309.3
- 1.309.2
- 1.309.1
- 1.309.0
- 1.308.0
- 1.307.0
- 1.306.1
- 1.306.0
- 1.305.0
- 1.304.0
- 1.303.0
- 1.302.1
- 1.302.0
- 1.301.0
- 1.300.2
- 1.300.1
- 1.300.0
- 1.299.2
- 1.299.1
- 1.299.0
- 1.298.0
- 1.297.1
- 1.297.0
- 1.296.0
- 1.295.0
- 1.294.1
- 1.294.0
- 1.293.0
- 1.292.0
- 1.291.1
- 1.291.0
- 1.290.2
- 1.290.1
- 1.290.0
- 1.289.0
- 1.288.0
- 1.287.0
- 1.286.1
- 1.286.0
- 1.285.0
- 1.284.0
- 1.283.0
- 1.282.0
- 1.281.2
- 1.281.1
- 1.281.0
- 1.280.0
- 1.279.0
- 1.278.1
- 1.278.0
- 1.277.3
- 1.277.2
- 1.277.1
- 1.277.0
- 1.276.1
- 1.276.0
- 1.275.3
- 1.275.2
- 1.275.1
- 1.275.0
- 1.274.1
- 1.274.0
- 1.273.0
- 1.272.0
- 1.271.0
- 1.270.1
- 1.270.0
- 1.269.1
- 1.269.0
- 1.268.3
- 1.268.2
- 1.268.1
- 1.268.0
- 1.267.0
- 1.267.0-ALPHA1
- 1.266.0
- 1.265.0
- 1.264.0
- 1.263.0
- 1.262.0
- 1.261.1
- 1.261.0
- 1.260.1
- 1.260.0
- 1.259.3
- 1.259.2
- 1.259.1
- 1.259.0
- 1.258.1
- 1.258.0
- 1.257.0
- 1.256.0
- 1.255.0
- 1.254.1
- 1.254.0
- 1.253.0
- 1.252.0
- 1.251.1
- 1.251.0
- 1.250.0
- 1.249.0
- 1.248.2
- 1.248.1
- 1.248.0
- 1.247.0
- 1.246.0
- 1.245.0
- 1.244.3
- 1.244.2
- 1.244.1
- 1.244.0
- 1.243.0
- 1.242.1
- 1.242.0
- 1.241.0
- 1.240.1
- 1.240.0
- 1.239.1
- 1.239.0
- 1.238.0
- 1.237.0
- 1.236.0
- 1.235.1
- 1.235.0
- 1.234.0
- 1.233.1
- 1.233.0
- 1.232.1
- 1.232.0
- 1.231.4
- 1.231.3
- 1.231.2
- 1.231.1
- 1.231.0
- 1.230.1
- 1.230.0
- 1.229.1
- 1.229.0
- 1.228.1
- 1.228.0
- 1.227.0
- 1.226.0
- 1.225.0
- 1.224.0
- 1.223.0
- 1.222.5
- 1.222.0
- 1.221.1
- 1.221.0
- 1.220.1
- 1.220.0
- 1.219.1
- 1.219.0
- 1.218.0
- 1.217.0
- 1.216.0
- 1.215.1
- 1.215.0
- 1.214.0
- 1.213.2
- 1.213.1
- 1.213.0
- 1.212.0
- 1.211.0
- 1.210.3
- 1.210.2
- 1.210.1
- 1.210.0
- 1.209.1
- 1.209.0
- 1.208.1
- 1.208.0
- 1.207.0
- 1.206.1
- 1.206.0
- 1.205.1
- 1.205.0
- 1.204.2
- 1.204.1
- 1.204.0
- 1.203.8
- 1.203.7
- 1.203.6
- 1.203.5
- 1.203.4
- 1.203.3
- 1.203.2
- 1.203.1
- 1.203.0
- 1.202.2
- 1.202.1
- 1.202.0
- 1.201.4
- 1.200.3
- 1.200.2
- 1.200.1
- 1.200.0
- 1.109.2
- 1.109.1
- 1.109.0
- 1.108.1
- 1.108.0
- 1.107.1
- 1.107.0
- 1.106.0
- 1.105.0
- 1.104.1
- 1.104.0
- 1.103.2
- 1.103.1
- 1.103.0
- 1.102.3
- 1.102.2
- 1.102.1
- 1.102.0
- 1.101.0
- 1.100.0
- 1.99.0
- 1.98.4
- 1.98.3
- 1.98.2
- 1.98.1
- 1.98.0
- 1.97.0
- 1.96.0
- 1.95.1
- 1.95.0
- 1.94.0
- 1.93.0
- 1.92.2
- 1.92.1
- 1.92.0
- 1.91.0
- 1.90.2
- 1.90.1
- 1.90.0
- 1.89.1
- 1.89.0
- 1.88.2
- 1.88.1
- 1.88.0
- 1.87.1
- 1.87.0
- 1.86.0
- 1.85.4
- 1.85.3
- 1.85.2
- 1.85.1
- 1.85.0
- 1.84.0
- 1.83.1
- 1.83.0
- 1.82.0
- 1.81.4
- 1.81.3
- 1.81.2
- 1.81.1
- 1.81.0
- 1.80.3
- 1.80.2
- 1.80.1
- 1.80.0
- 1.79.1
- 1.79.0
- 1.78.0
- 1.77.5
- 1.77.4
- 1.77.3
- 1.77.2
- 1.77.1
- 1.77.0
- 1.76.2
- 1.76.1
- 1.76.0
- 1.74.2
- 1.74.1
- 1.74.0
- 1.73.2
- 1.73.1
- 1.73.0
- 1.72.0
- 1.70.0
- 1.68.0
- 1.67.2
- 1.67.1
- 1.67.0
- 1.66.0
- 1.65.0
- 1.63.0
- 1.62.0
- 1.61.0
- 1.60.0
- 1.59.0
- 1.58.0
- 1.57.0
- 1.56.0
- 1.55.0
- 1.54.0
- 1.53.0
- 1.52.0
- 1.51.1
- 1.51.0
- 1.50.0
- 1.49.2
- 1.49.1
- 1.49.0
- 1.48.2
- 1.48.1
- 1.48.0
- 1.47.2
- 1.47.1
- 1.47.0
- 1.46.1
- 1.46.0
- 1.45.0
- 1.44.3
- 1.44.2
- 1.44.1
- 1.44.0
- 1.43.0
- 1.42.1
- 1.41.1
- 1.41.0
- 1.40.0
- 1.39.0
- 1.38.0
- 1.37.2
- 1.37.1
- 1.37.0
- 1.36.6
- 1.36.5
- 1.36.3
- 1.36.2
- 1.36.1
- 1.36.0
- 1.35.1
- 1.35.0
- 1.34.3
- 1.34.2
- 1.32.2
- 1.32.1
- 1.32.0
- 1.31.1
- 1.31.0
- 1.30.2
- 1.30.1
- 1.30.0
- 1.29.0
- 1.28.0
- 1.27.2
- 1.27.1
- 1.27.0
- 1.26.1
- 1.26.0
- 1.25.0
- 1.24.0
- 1.23.0
- 1.22.11
- 1.22.10
- 1.22.9
- 1.22.8
- 1.22.7
- 1.22.6
- 1.22.5
- 1.22.4
- 1.22.3
- 1.22.2
- 1.22.1
- 1.22.0
- 1.21.1
- 1.21.0
- 1.20.3
- 1.20.2
- 1.20.1
- 1.20.0
- 1.19.1
- 1.19.0
- 1.18.0
- 1.17.7
- 1.17.6
- 1.17.5
- 1.17.4
- 1.17.3
- 1.17.2
- 1.17.1
- 1.17.0
- 1.16.0
- 1.15.5
- 1.15.4
- 1.15.3
- 1.15.2
- 1.15.1
- 1.15.0
- 1.14.2
- 1.14.1
- 1.14.0
- 1.13.3
- 1.13.2
- 1.13.1
- 1.13.0
- 1.12.4
- 1.12.3
- 1.12.2
- 1.12.1
- 1.12.0
- 1.11.4
- 1.11.3
- 1.11.2
- 1.11.1
- 1.11.0
- 1.10.10
- 1.10.9
- 1.10.8
- 1.10.7
- 1.10.6
- 1.10.5
- 1.10.4
- 1.10.3
- 1.10.2
- 1.9.3
- 1.9.2
- 1.9.1
- 1.9.0
- 1.8.4
- 1.8.3
- 1.8.2
- 1.8.1
- 1.8.0
- 1.7.5
- 1.7.4
- 1.7.3
- 1.7.2
- 1.7.1
- 1.7.0
- 1.6.4
- 1.6.2
- 1.6.1
- 1.6.0
- 1.5.2
- 1.5.1
- 1.5.0
- 1.3.0
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.1
- 1.0.0
This package is auto-updated.
Last update: 2026-04-23 17:38:35 UTC
README
To contribute make use of Ecotone-Dev repository.
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.
Event Sourcing (PDO-backed Event Store)
Full Event Sourcing support for Ecotone, backed by your relational database via PDO. Event-sourced aggregates, projections, upcasting, and replay — all driven by attributes on your existing classes.
- Event-sourced aggregates via
#[EventSourcingAggregate]— one attribute flips state-stored to event-sourced - Projections via
#[Projection]— catch-up, reset, partition, and streaming variants - Event versioning and upcasting — evolve your event schema without rewriting history
- Streaming Projections — process events in real-time with Message Broker transport
- PostgreSQL and MySQL supported out of the box
Same testing story as the rest of Ecotone: spin up the event store in memory with EcotoneLite::bootstrapFlowTesting, replay events into your projections, and assert on results — no external infrastructure required.
Visit ecotone.tech to learn more.
Works with Symfony, Laravel, or any PSR-11 framework via Ecotone Lite.
Getting started
See the quickstart guide and reference documentation. Read more on the Ecotone Blog.
AI-Ready documentation
Ecotone ships with MCP server, Agentic Skills, and LLMs.txt for any coding agent. See the AI Integration Guide.
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, Event Sourcing, Event Store, Projections, DCB, CQRS, DDD, PostgreSQL, MySQL, Ecotone