PHPackages                             ice-cream/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. [Framework](/categories/framework)
4. /
5. ice-cream/events

ActiveLibrary[Framework](/categories/framework)

ice-cream/events
================

Event Handler For Ice Cream Framework

1.1.1(8y ago)116MITPHPPHP &gt;=7.2.0

Since Jan 20Pushed 8y agoCompare

[ Source](https://github.com/AdamKyle/ice-cream-events)[ Packagist](https://packagist.org/packages/ice-cream/events)[ RSS](/packages/ice-cream-events/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (3)Dependencies (5)Versions (4)Used By (0)

Ice Cream Events
================

[](#ice-cream-events)

[![Build Status](https://camo.githubusercontent.com/af4b5e4bc6f2195558449282667bf19bfbfd2fbb9fc2673d4e9654bcaa293e2c/68747470733a2f2f7472617669732d63692e6f72672f4164616d4b796c652f6963652d637265616d2d6576656e74732e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/AdamKyle/ice-cream-events)[![Packagist](https://camo.githubusercontent.com/25961e098939d9b984dd540644f5a133ce6d638305ec4b34155fb3d00963a819/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6963652d637265616d2f6576656e74732e7376673f7374796c653d666c6174)](https://packagist.org/packages/ice-cream/events)![Maintenance](https://camo.githubusercontent.com/bc62a4386260fb7a4c9f5e3977f2f2bf876ad0374f462e723cedd156953a0da4/68747470733a2f2f696d672e736869656c64732e696f2f6d61696e74656e616e63652f7965732f323031382e737667)![Made With Love](https://camo.githubusercontent.com/8e692b7ce6dc41cb29efb7aa471b6e72a0a009ff99bf93ca83023a3da4e177b8/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d616465253230576974682d4c6f76652d677265656e2e737667)

Simple event handler for managing events in Ice Cream.

Requirements
------------

[](#requirements)

- PHP 7.2
- Is Stand Alone

Documentation
-------------

[](#documentation)

You can view this packages documentation [here](https://github.com/AdamKyle/ice-cream-events/blob/master/docs/ApiIndex.md)

Usage
-----

[](#usage)

Usage is rather simple, first we have to create a listener and register it. A listener is going to listen for new events to be dispatched and then do something when that event is dispatched.

This is very similar to Symfony's event Dispatcher:

```
// Create the handler:

$eventHandler = new EventHandler();

// Create a listener to listen to events being fired:

$listener = new Listener();
```

Lets define the listener class:

```
use IceCreamEvents\Listener;

class PageViewEventListener extends Listener{

  // Read on to see the event definition.
  public function onAction(PageViewEvent $pageViewedEvent) {
     // ... Do something.
  }
}
```

Now lets create an event:

```
use IceCreamEvents\Event;

class PageViewEvent extends Event {

  protected $pageViewed;

  public function __construct(PageViewed $pageViewed) {
    $this->pageViewed = $pageViewed;
  }

  public function getPageViewed() {
    return $this->pageViewed;
  }
}
```

Finally lets register the event with the appropriate listener:

```
$eventHandler->register('page.viewed', PageViewEvent::class, PageViewEventListener::class, 'onAction');
```

Next we dispatch the event:

```
$eventHandler->dispatch('page.viewed');
```

What this does is register the page viewed event with the listener class and when the event is fired we call the `onAction` method and pass it the event class. This is similar to how Laravel registers events.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity60

Established project with proven stability

 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

Every ~210 days

Total

3

Last Release

2978d ago

PHP version history (2 changes)1.0PHP &gt;=7.0.0

1.1.1PHP &gt;=7.2.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/b355c694c28f31b51b43be0f1c4ba58d09729c77395a10fa4f68989065db6f27?d=identicon)[AdamKyle](/maintainers/AdamKyle)

---

Top Contributors

[![AdamKyle](https://avatars.githubusercontent.com/u/188563?v=4)](https://github.com/AdamKyle "AdamKyle (9 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M192](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

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