Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Messages For Laravel

Messages For Laravel Laravel Package

roundly-consulting/messages-for-laravel

Messages for Laravel provides a clean, simple API for composing, queuing, and delivering messages within your Laravel application. It supports multiple channels and customizable templates, streamlining in-app and user-to-user communication with minimal setup.

View on GitHub
Deep Wiki
Context7

Realtime messages between entities using Laravel broadcasting

Frequently asked questions about Messages For Laravel
How do I install Messages for Laravel?
Install it with composer require roundly-consulting/messages-for-laravel, then publish the package config and any optional stubs. Clear Laravel's config cache after publishing and set messages.resources.participant if you need custom participant payloads. Check the README for exact publish commands and any migration steps.
Does Messages for Laravel support realtime messaging with Laravel broadcasting?
Yes. The package uses Laravel broadcasting to deliver realtime messages between entities, and it also integrates with notifications and Eloquent models. It supports multiple channels and customizable templates for in-app and user-to-user communication. You still need to configure your Laravel broadcasting driver and queue workers as usual.
Which Laravel and PHP versions does this package support?
The package is Laravel-native and its exact Laravel and PHP version constraints are defined in composer.json. Review that file and the README before installing or upgrading. The evaluation notes PostgreSQL and MySQL testing, but it does not list specific framework version constraints.
What breaking changes are in Messages for Laravel 1.2.0?
Release 1.2.0 changes public payloads so participant.type, reply_to.sender_type, and notification sender_type use the model class basename such as User instead of the full class name or morph type. Deleted participants now render as null, and a sender for a non-participating model renders {id,type} instead of null. Treat this as a breaking change for API clients and notification consumers even though it is a minor release.
How does Messages for Laravel interact with Eloquent morph maps?
The package uses Eloquent models and morph-aware participant and sender handling. In 1.2.0 the payload type is the model class basename, so verify that basenames match any morph map aliases your application or clients expect. If clients depend on specific aliases, update the clients or add mapping and versioning before upgrading.
How do I customize participant payloads with messages.resources.participant?
Set messages.resources.participant to a JsonResource class that renders the participant fields you need, such as names or avatars. An invalid value for this config throws InvalidConfigurationException, so clear the config cache after changes. This avoids forking the package when the default participant payload is insufficient.
Do I need to republish config or stubs after upgrading Messages for Laravel?
Published stubs do not auto-update, so after upgrading re-publish or manually update the messages-resources and messages-notifications stubs. Also verify the package config and clear the config cache after adding messages.resources.participant. Coordinate stub changes with frontend and notification consumers because payload contracts may change.
How should I migrate existing stored notifications with old sender_type values?
Stored notifications may retain old sender_type values after upgrading, so identify any consumers that read those records. Plan a backfill or dual-read strategy if old full class names must remain readable. Run contract tests against both old and new notification data before deployment.
What happens when a participant is deleted or a non-participant sends a message?
Deleted participants now render as null instead of returning stored IDs, so clients must handle null participant data. A sender for a model that is not a participant renders {id,type} instead of null. Update UI and API contract tests to cover both cases.
How should I test and roll out the Messages for Laravel 1.2.0 upgrade safely?
Upgrade in a branch, run package tests and your application contract tests, and update API clients and notification handlers for basename types and null participants. Test against PostgreSQL or MySQL if those are your production databases. Clear config cache and monitor for InvalidConfigurationException after deployment.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager