surgio / eloquent-message-repository
Eloquent Message Repository for EventSauce
Package info
github.com/surgiollc/eloquent-message-repository
pkg:composer/surgio/eloquent-message-repository
v4.0
2026-05-08 22:25 UTC
Requires
- php: >=8.2
- ext-json: *
- eventsauce/eventsauce: ^3.0
- ramsey/uuid: ^4.1
Requires (Dev)
- orchestra/testbench: ^10.11
- phpunit/phpunit: ^10.0|^11.0|^12.0
This package is auto-updated.
Last update: 2026-05-08 22:26:15 UTC
README
This package allows you to use Eloquent as a custom message repository for EventSauce.
Heavily inspired by EventSaucePHP/DoctrineMessageRepository.
Requirements
This package requires PHP 8.2 and Laravel 10 or higher.
Installation
composer require surgio/eloquent-message-repository:^4.0.0
Setup
Publish the migration:
php artisan vendor:publish --provider="Surgio\EloquentMessageRepository\EventSauceServiceProvider" --tag="migrations"
Migrate your database:
php artisan migrate
Usage
The Eloquent Message Repository implements EventSauce\EventSourcing\MessageRepository and can be passed to any AggregateRootRepository like so:
$aggregateRootRepository = new ConstructingAggregateRootRepository(
SomeProcess::class,
new EloquentMessageRepository(new ConstructingMessageSerializer())
);
Testing
You can run the tests with:
composer test