laravel-interaction/interactions
Laravel Interaction lets Eloquent models interact polymorphically—likes, favorites, votes, follows, bookmarks, subscriptions, and more. Attach reusable interaction types to any model, query who interacted and what they interacted with, and build social features with clean, extendable APIs.
laravel-interaction/interactions provides a polymorphic interaction layer (views, likes, favorites, and custom interaction types) that attaches any model to any actor. This lets us ship engagement mechanics — "liked by", "viewed by", counters, "who viewed my post" — without designing a schema or writing per-feature pivot tables.Adopt when:
Look elsewhere when:
To executives: This is a small, low-risk open-source component that lets us add "like / save / view" style engagement features without building the underlying data plumbing ourselves. The latest release (3.5.0) is a maintenance release — it adds compatibility with the next Laravel version, PHP 8.5, and PHPUnit 12, with no breaking changes. That means adopting it now does not create a future upgrade liability; it actively reduces one. Estimated effort saved is measured in days-to-weeks per engagement feature, not months.
To engineering: 3.5.0 is purely additive compatibility work: Laravel 13 support, PHP 8.5 support, PHPUnit 12 support, a orchestra/testbench constraint update, and routine CI/dependency bumps. No API changes, no deprecations, no migration required. It sits cleanly within the existing 3.x line, so it is a safe minor-version upgrade. The main engineering caveats to validate before adoption: index and uniqueness strategy for high-volume interactions, and whether counter caching is handled at the application layer (it likely is — plan for it). We should not treat this package as an analytics or audit-log solution; it is a relationship-modeling convenience, and we retain responsibility for throughput, retention, and deduplication semantics.
How can I help you explore Laravel packages today?