jphooiveld/eventsauce-bundle
A Symfony bundle that integrates EventSauce event sourcing into your application, providing service configuration for aggregates, repositories, message dispatching, and event storage so you can build domain-driven, event-sourced systems with less boilerplate.
First, a correction worth surfacing early: this is a Symfony bundle, not a Laravel package. The underlying library (eventsauce/eventsauce) is framework-agnostic PHP and works in Laravel, but the bundle itself only provides Symfony DI wiring and configuration. If your stack is Laravel, this package is not a drop-in — it is at best a reference implementation for the ~100–200 lines of container glue you would write yourself. Anyone framing this as a "Laravel package" in a ticket or vendor review is mis-scoping the work.
With that caveat, the decisions this package genuinely informs:
MessageRepository, MessageDispatcher, and serializer chain inside a DI container. That maps cleanly onto a Laravel service provider if we go that route.Reasonable to evaluate only when all of the following hold:
Look elsewhere — or write the glue — when any of these are true:
eventsauce/eventsauce library does. Budget a short spike for a service provider, not a dependency.Practical gating criteria before any spike: confirm the EventSauce version constraint, confirm PHP/Symfony compatibility, confirm test presence and coverage, and confirm who owns the fork if the upstream goes quiet (it already has).
To executives — one line: this is a thin, unmaintained adapter for a niche PHP event-sourcing library; it is not a strategic dependency, and we should not adopt it as one.
The business framing: event sourcing is the decision that matters. If audit trails, regulatory reconstruction of historical state, or "replay history to answer a new question" are genuinely valuable to our product, the capability is worth investing in. If they are nice-to-haves, an append-only audit log delivers 80% of the value at 20% of the complexity, and we should choose that instead. Either way, this specific package is a footnote — it saves about a day of plumbing and carries an unmaintained-code liability that outweighs that saving.
To engineering — the honest trade: the bundle hands you Symfony DI wiring for EventSauce's message repository, dispatcher, serializer, and consumer. It is readable and small enough to lift wholesale. But it was last released in 2019, has 15 stars and zero dependents, and predates modern Symfony and PHP baselines. Recommendation: use it as a reference, not a dependency. If we commit to EventSauce, write and own the integration layer ourselves — it is a short, well-understood piece of work, and owning it removes a fork obligation we would otherwise inherit on day one.
Recommended decision: do not adopt as a dependency. Treat as a reference implementation, run a time-boxed spike on eventsauce/eventsauce directly against our framework of record, and make the event-sourcing go/no-go call on product grounds rather than on the availability of this bundle.
How can I help you explore Laravel packages today?