PHPackages                             happyr/event-tracker-bundle - 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. happyr/event-tracker-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

happyr/event-tracker-bundle
===========================

0.6.1(5y ago)44.7k1MITPHPPHP ^7.2

Since Mar 16Pushed 5y ago1 watchersCompare

[ Source](https://github.com/Happyr/EventTrackerBundle)[ Packagist](https://packagist.org/packages/happyr/event-tracker-bundle)[ Docs](http://developer.happyr.com)[ RSS](/packages/happyr-event-tracker-bundle/feed)WikiDiscussions master Synced today

READMEChangelog (9)Dependencies (5)Versions (13)Used By (0)

Happyr Event Tracker Bundle
===========================

[](#happyr-event-tracker-bundle)

This bundle helps you log changes in your application. It is used to connect an entity and user with an event and time. You may later query this log to get the history of the event. Example when you want to know who edited the blog post.

This is similar to [Hostnet entity tracker](https://github.com/hostnet/entity-tracker-component) but we do not listen to doctrine lifecycle events, we let you configure your own events.

Usage
-----

[](#usage)

Install the bundle with `composer require happyr/event-tracker-bundle`, and let your events implement `TrackableEventInterface`. Then you only need to configure for which events you want to have tracked.

```
happyr_event_tracker:
  events:
    acme.blog_post.created:
        namespace: blogpost
        action: created
    acme.blog_post.updated:
        namespace: blogpost
        action: updated
    acme.comment.created:
        namespace: comment
        action: created
```

Your user entity need to extend EventUserInterface and you need to make sure doctrine recognize the mapping:

```
doctrine:
  orm:
    resolve_target_entities:
      Happyr\EventTrackerBundle\Entity\EventUserInterface: Acme\UserBundle\Entity\User
```

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity55

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

Every ~188 days

Recently: every ~274 days

Total

12

Last Release

2061d ago

PHP version history (2 changes)0.1.0PHP &gt;=5.4

0.5.1PHP ^7.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/401ccc5eea13c60cf807ae982af00e368e2166e2f26d8eb541dcd881a57385bc?d=identicon)[Nyholm](/maintainers/Nyholm)

---

Top Contributors

[![Nyholm](https://avatars.githubusercontent.com/u/1275206?v=4)](https://github.com/Nyholm "Nyholm (33 commits)")

### Embed Badge

![Health badge](/badges/happyr-event-tracker-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/happyr-event-tracker-bundle/health.svg)](https://phpackages.com/packages/happyr-event-tracker-bundle)
```

###  Alternatives

[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M388](/packages/easycorp-easyadmin-bundle)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)

PHPackages © 2026

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