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
Laravel Modules Interactions

Laravel Modules Interactions Laravel Package

ozankurt/laravel-modules-interactions

A Laravel package for wiring interactions between application modules, letting separate modules communicate and respond to one another without tight coupling. Useful for modular projects that need clean, event-style cross-module hooks.

View on GitHub
Deep Wiki
Context7

Polymorphic social & engagement toolkit for Laravel: emoji reactions, comments, @mentions, likes/votes/ratings/favorites/subscriptions, and a follows/friendships social graph. Headless + optional Filament admin.

Frequently asked questions about Laravel Modules Interactions
What is ozankurt/laravel-modules-interactions used for?
It is a polymorphic social and engagement toolkit for Laravel applications. It adds emoji reactions, comments, @mentions, likes, votes, ratings, favorites and subscriptions to your models, plus a follows and friendships social graph. The package is headless by default with an optional Filament admin panel.
Which Laravel and PHP versions does laravel-modules-interactions support?
Version 2.0.0 requires PHP ^8.4 and illuminate/* ^13.0, so it targets Laravel 13 only. Laravel 12 and PHP 8.3 are explicitly unsupported in this release. Filament ^3.0, ^4.0 and ^5.0 are all allowed by the constraint.
How do I install laravel-modules-interactions?
Install it with Composer using composer require ozankurt/laravel-modules-interactions, then publish the package config and migrations and run php artisan migrate. Your application must already run Laravel 13 and PHP 8.4 before Composer can resolve the package. It also pulls in ozankurt/laravel-modules-core ^2.0 and spatie/laravel-package-tools ^1.93.
Is laravel-modules-interactions compatible with Filament 3?
Yes, the Filament constraint accepts ^3.0, ^4.0 and ^5.0, and CI verifies all three majors against Laravel 13. The remaining risk is third-party Filament plugins that may not yet support Laravel 13 or PHP 8.4. Verify those plugins before upgrading your panels.
Can I use this package on Laravel 12 or PHP 8.3?
No. The v2.0.0 constraints require PHP ^8.4 and illuminate/* ^13.0, so Composer resolution will fail on Laravel 12 or PHP 8.3. You must complete the platform upgrade first. Only then should you bump this package to ^2.0.
Does laravel-modules-interactions require ozankurt/laravel-modules-core?
Yes, ozankurt/laravel-modules-core ^2.0 is a hard runtime dependency. That creates a transitive upgrade gate, so laravel-modules-core must be Laravel 13-ready before you update this package. Upgrade it first and confirm it resolves cleanly.
What changed in laravel-modules-interactions v2.0.0?
The release moves the platform baseline to Laravel 13 and PHP 8.4, and replaces interpolated DB::raw counter SQL with query builder increment() and decrement() calls. Development tooling moves to Pest 5 and Testbench 11. The package states that application-facing APIs are unchanged, but you should still verify published config, migrations, events and assets.
How do reactions and comments attach to my Eloquent models?
Interactions are polymorphic, so models such as posts, products or users can be reacted to, commented on, liked, voted on or favorited through morph relations. You enable the traits or contracts on the models you want to make interactive. The follows and friendships graph is handled separately from content interactions.
How do I upgrade an existing app to laravel-modules-interactions v2.0.0 safely?
Sequence the work: upgrade the host application to Laravel 13 and PHP 8.4, then update ozankurt/laravel-modules-core to ^2.0 and spatie/laravel-package-tools to ^1.93, then bump this package to ^2.0 and run composer update. Regression test Filament panels, module registration and counter updates, with particular attention to custom table names, column prefixes and non-standard primary keys. Validate in staging before production rollout.
How do I run the test suite or contribute to laravel-modules-interactions?
The package uses Pest 5 and Testbench 11 for its own test suite, which only affects contributors, not application teams. Application developers just need their normal Laravel test setup to cover interactions on their models. When contributing, follow the package's Pest-based workflow and verify tests against Laravel 13 and PHP 8.4.
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