PHPackages                             asseco-voice/laravel-eloquent-event-broadcaster - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. asseco-voice/laravel-eloquent-event-broadcaster

ActiveLibrary

asseco-voice/laravel-eloquent-event-broadcaster
===============================================

Laravel eloquent events broadcasting

v2.1.0(1y ago)06.7k↓100%[3 PRs](https://github.com/asseco-voice/laravel-eloquent-event-broadcaster/pulls)MITPHPPHP ^8.1

Since Feb 10Pushed 1y ago5 watchersCompare

[ Source](https://github.com/asseco-voice/laravel-eloquent-event-broadcaster)[ Packagist](https://packagist.org/packages/asseco-voice/laravel-eloquent-event-broadcaster)[ RSS](/packages/asseco-voice-laravel-eloquent-event-broadcaster/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (6)Versions (12)Used By (0)

[![](https://github.com/asseco-voice/art/raw/main/evil_logo.png)](https://see.asseco.com)

Broadcast Eloquent events
=========================

[](#broadcast-eloquent-events)

By default, Laravel [Eloquent events](https://laravel.com/docs/8.x/eloquent#events) are dispatched internally. This package enables the events to be dispatched to an event bus instead.

Installation
------------

[](#installation)

Require the package with `composer require asseco-voice/laravel-eloquent-event-broadcaster`. Service provider for Laravel will be installed automatically.

Using [STOMP](https://github.com/asseco-voice/laravel-stomp) as a queue driver will support the communication between multiple Laravel services because it will be dispatching events with raw data so that it doesn't break on the other side.

This is completely optional however. If you're not using Laravel for microservices, your data will be serialized the standard Laravel way.

Usage
-----

[](#usage)

Make the model use a `BroadcastsEloquentEvents` and `created`, `updated`, `deleted` and `restored`events will be automatically dispatched to a `eloquent::model_events` queue.

Raw data being sent consists of:

- `payload` key containing original model serialized to array.
- Let your model implement `AppendsData` interface to append additional data to payload.
- Changes (`_changes`) array holding `old`/`new` values and `type`/`ID` of entity that changed the model. Used for auditing purposes (can be disabled through config).
- Headers consisting of:
    - `service` - lowercase snake app name
    - `model` - full model namespace and model name
    - `action` - which action was performed on the model (pulled from registered actions which can be appended or modified in the config)
- Let your model implement `AppendsHeaders` interface to append additional headers.

You can tweak the configuration publishing it with:

```
php artisan vendor:publish --tag=asseco-broadcaster-config

```

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance36

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 79.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~169 days

Recently: every ~188 days

Total

8

Last Release

728d ago

Major Versions

v0.2.1 → v1.0.02022-05-05

v1.1.0 → v2.0.02023-08-08

PHP version history (2 changes)v1.0.0PHP ^8.0

v2.0.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/d61de45741b74e7d4a9ee5778160cf54ae5e94a615ae1a6f72b6d1e5fae68d12?d=identicon)[Norgul](/maintainers/Norgul)

---

Top Contributors

[![Norgul](https://avatars.githubusercontent.com/u/11718157?v=4)](https://github.com/Norgul "Norgul (31 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (6 commits)")[![josip-milotic](https://avatars.githubusercontent.com/u/42002911?v=4)](https://github.com/josip-milotic "josip-milotic (1 commits)")[![ngaspari](https://avatars.githubusercontent.com/u/33628128?v=4)](https://github.com/ngaspari "ngaspari (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/asseco-voice-laravel-eloquent-event-broadcaster/health.svg)

```
[![Health](https://phpackages.com/badges/asseco-voice-laravel-eloquent-event-broadcaster/health.svg)](https://phpackages.com/packages/asseco-voice-laravel-eloquent-event-broadcaster)
```

###  Alternatives

[anourvalar/eloquent-serialize

Laravel Query Builder (Eloquent) serialization

11320.2M21](/packages/anourvalar-eloquent-serialize)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135192.6k5](/packages/statamic-rad-pack-runway)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
