PHPackages                             moebius/events - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. moebius/events

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

moebius/events
==============

Event emitter implementation for Moebius

1.0.0(3y ago)081MITPHP

Since Jun 24Pushed 3y ago1 watchersCompare

[ Source](https://github.com/moebiusphp/events)[ Packagist](https://packagist.org/packages/moebius/events)[ RSS](/packages/moebius-events/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependencies (2)Versions (2)Used By (1)

Moebius\\Events
===============

[](#moebiusevents)

A simple event emitter implementation for Moebius. Provides interfaces and traits for event emitters.

Listener API
------------

[](#listener-api)

- `EventEmitterInterface::on( string $eventName, callable $handler )`Subscribe to an event.
- `EventEmitterInterface::off( string $eventName = null, callable $handler = null )`Unsubscribe from an event.
- `EventEmitterInterface::emit( EventInterface|string $eventName, mixed ...$arguments)`Emit an event. You can emit either an EventInterface object, or a named event with any number of argumnents.

Static Event Emitters
---------------------

[](#static-event-emitters)

In some circumstances you want to subscribe to events from objects that don't exist yet. This is enabled by the static event emitter.

- `StaticEventEmitterInterface::events(): EventEmitterInterface`

This particular event emitter will take into account which class you're subscribed to, in the PHP class hierarchy. So if you subscribe to a root class, you will receive events from all extending classes that emit events as well. If you subscribe to a child class, you will not receive events emitted higher up in the class hierarchy.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

1424d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8822e0a14ce04a8f711d4ea933ea90aa005d9ee14827f05feac572c5601fb840?d=identicon)[frodeborli](/maintainers/frodeborli)

---

Top Contributors

[![frodeborli](https://avatars.githubusercontent.com/u/2299344?v=4)](https://github.com/frodeborli "frodeborli (2 commits)")

### Embed Badge

![Health badge](/badges/moebius-events/health.svg)

```
[![Health](https://phpackages.com/badges/moebius-events/health.svg)](https://phpackages.com/packages/moebius-events)
```

###  Alternatives

[jms/php-manipulator

Library for Analyzing or Manipulating PHP files using the TokenStream, AST, or both

10637.6k1](/packages/jms-php-manipulator)

PHPackages © 2026

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