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

Event Dispatcher Laravel Package

yiisoft/event-dispatcher

PSR-14 event dispatcher for Yii applications with a simple listener API, listener providers, dependency injection support, and extensible configuration. Lightweight and framework-agnostic, it helps decouple components by dispatching events to typed listeners.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Architecture standardization: Deciding whether PSR-14 should be the eventing contract for shared PHP modules so Laravel, Symfony, Yii, and plain PHP consumers can interoperate.
  • Build vs. buy: Comparing a homegrown dispatcher, Laravel’s native event system, Symfony’s PSR-14 dispatcher, or this Yii-maintained implementation for a small eventing layer.
  • Multi-framework roadmap: If the product includes shared PHP packages or SDKs that must run outside Laravel, PSR-14 event dispatch becomes a portability decision.
  • Dependency and vendor risk: Deciding whether a 73-star package with an unknown repository and a last release of 2022-10-27 is acceptable as a direct dependency or should be isolated behind an adapter.
  • Use cases: Framework-agnostic library/SDK domain events, plugin hooks, audit/logging signals, and integration points where the emitting package should not depend on Laravel’s dispatcher.
  • Not for: Replacing Laravel’s dispatcher in a Laravel product where queues, broadcasting, testing helpers, and framework integration matter.

When to Consider This Package

Consider it only when:

  • You are building a framework-agnostic PHP package or SDK and need a minimal PSR-14 dispatcher, especially if Yii compatibility is already in scope.
  • You want a permissively licensed (BSD-3-Clause), small, spec-focused dependency rather than a full event framework.
  • Your needs are simple: register listeners and dispatch PSR-14 events, without queues, broadcasting, listener priorities, or advanced subscriber machinery.
  • You can pin the version, wrap it behind your own interface, and accept limited community support and stale release cadence.

Look elsewhere when:

  • You are building a typical Laravel application; Laravel’s native dispatcher is already integrated and preferable.
  • You need active maintenance, security responsiveness, broad adoption, or long-term vendor confidence. The 2022 last release, 73 stars, and unknown repository provenance are material risks.
  • You need queued/asynchronous events, broadcasting, subscribers, priorities, profiling, or deep framework integration.
  • You can use Symfony’s event dispatcher, which is PSR-14 compatible and widely maintained, or the psr/event-dispatcher interfaces with a small in-house implementation.

How to Pitch It (Stakeholders)

Executive summary: This is a small, permissively licensed PSR-14 event dispatcher from the Yii ecosystem. It could support a framework-agnostic eventing standard for shared PHP libraries, but it is not a strategic Laravel dependency. With 73 stars, an unknown repository, and no release since October 2022, it carries maintenance and traceability risk. Recommend approving it only as an isolated, adapter-wrapped dependency for a narrow interoperability use case—not as the core event system for a Laravel product. The safer default is Laravel’s native dispatcher for applications and Symfony’s PSR-14 dispatcher for framework-neutral packages.

Engineering summary: PSR-14 gives us a clean contract and framework portability, but this package is a thin implementation with limited community momentum. Laravel does not natively use PSR-14 for its event system, so adopting this package would mean bridging or replacing Laravel’s dispatcher—high integration cost and low product upside. Use it only behind an internal interface if a specific package must emit PSR-14 events across Yii and other frameworks; otherwise standardize on the framework-native or Symfony implementation.

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.
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels