PHPackages                             notifier/notifier - 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. [Mail &amp; Notifications](/categories/mail)
4. /
5. notifier/notifier

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

notifier/notifier
=================

Send notifications using any delivery method.

1.0.0(12y ago)1410.4k↓16.7%3[11 issues](https://github.com/Notifier/Notifier/issues)MITPHPPHP &gt;=5.3.3

Since Dec 2Pushed 11y ago3 watchersCompare

[ Source](https://github.com/Notifier/Notifier)[ Packagist](https://packagist.org/packages/notifier/notifier)[ Docs](https://github.com/nousefreak/Notifier)[ RSS](/packages/notifier-notifier/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (11)Used By (0)

Notifier
========

[](#notifier)

[![Build Status](https://camo.githubusercontent.com/84cdc754045b259500bdc63eae60ba2ac1f2e6756dc27f7e1607e9a6bd82f738/68747470733a2f2f7472617669732d63692e6f72672f4e6f7469666965722f4e6f7469666965722e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/Notifier/Notifier)[![Latest Stable Version](https://camo.githubusercontent.com/bad11956d1d92ad08e280622848d501de55fb315e5e3ecbb09a16f1ab544c95a/68747470733a2f2f706f7365722e707567782e6f72672f6e6f7469666965722f6e6f7469666965722f762f737461626c652e737667)](https://packagist.org/packages/notifier/notifier) [![Total Downloads](https://camo.githubusercontent.com/7c847bd9aa5402b84b93fe0e1d6f9892306b1351c5c8557dc5d9fb866d1e659b/68747470733a2f2f706f7365722e707567782e6f72672f6e6f7469666965722f6e6f7469666965722f646f776e6c6f6164732e737667)](https://packagist.org/packages/notifier/notifier) [![Latest Unstable Version](https://camo.githubusercontent.com/3df7ea3abaf736ca405a1ec8fcf5476b1d8eed93a9d9b4f50cdb8a99b499a7c1/68747470733a2f2f706f7365722e707567782e6f72672f6e6f7469666965722f6e6f7469666965722f762f756e737461626c652e737667)](https://packagist.org/packages/notifier/notifier)[![Dependency Status](https://camo.githubusercontent.com/957cc2c4437f9163dc768ba8fbb7d805d7b86251d12d71c1ff79726513e1fc85/68747470733a2f2f7777772e76657273696f6e6579652e636f6d2f757365722f70726f6a656374732f3534353263303866323262346662386137313030303032352f62616467652e737667)](https://www.versioneye.com/user/projects/5452c08f22b4fb8a71000025)[![License](https://camo.githubusercontent.com/7d96f26a947091948b8f2d0f7783edc73140b61c01e2b813c86842db450ee493/68747470733a2f2f706f7365722e707567782e6f72672f6e6f7469666965722f6e6f7469666965722f6c6963656e73652e737667)](https://packagist.org/packages/notifier/notifier)

Using this library, you can send messages to users following their preffered channels. This will help you focus on your application code and leave the message sending to your Notifier implementation.

**Caution**: Only use **&lt; 2.0** in production!

Use Case
--------

[](#use-case)

Say you want your users to choose how they receive notifications from your application. For example on a new private message you have them choose SMS, email or both. Notifier will help you handle these choices. From within your application you don't need to worry about what delivery type the user chose. You just send the message indicating what type the message is and Notifier will resolve the correct channels and send it.

Example
-------

[](#example)

This is an example of the implementation of the MailChannel.

```
use Notifier\Mail\ParameterBag\MailMessageParameterBag;
use Notifier\Mail\ParameterBag\MailRecipientParameterBag;
use Notifier\Recipient\Recipient;
use Notifier\Message\Message;
use Notifier\Notifier;

$message = new Message(new InformationType());
$message->addParameterBag(new MailMessageParameterBag('Mail subject', 'Body...'));

$recipient = new Recipient();
$recipient->addParameterBag(new MailRecipientParameterBag('someone@example.com'));

// The ChannelResolver will decide to which channels a message of a specific type must be sent.
$notifier = new Notifier(new RecoverPasswordChannelResolver());
$notifier->sendMessage($message, array($recipient));
```

Current state
-------------

[](#current-state)

The project is in active development of 2.0.x. Please refer to [1.0.x](https://github.com/Notifier/Notifier/blob/1.0.x/README.md) if you want to use this in production.

Channels
--------

[](#channels)

Notifier is stripped of most channels. You can find a [list of all available channels](http://github.com/Notifier).

Contributing
------------

[](#contributing)

> All code contributions - including those of people having commit access - must go through a pull request and approved by a core developer before being merged. This is to ensure proper review of all the code.
>
> Fork the project, create a feature branch, and send us a pull request.
>
> To ensure a consistent code base, you should make sure the code follows the [Coding Standards](http://symfony.com/doc/2.0/contributing/code/standards.html)which we borrowed from Symfony. Make sure to check out [php-cs-fixer](https://github.com/fabpot/PHP-CS-Fixer) as this will help you a lot.

If you would like to help take a look at the [list of issues](http://github.com/Notifier/Notifier/issues).

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

[](#requirements)

PHP 5.3.2 or above

Author and contributors
-----------------------

[](#author-and-contributors)

Dries De Peuter -  -

See also the list of [contributors](https://github.com/Notifier/Notifier/contributors) who participated in this project.

License
-------

[](#license)

Notifier is licensed under the MIT license.

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance4

Infrequent updates — may be unmaintained

Popularity32

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 85.2% 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 ~38 days

Total

9

Last Release

4609d ago

Major Versions

0.5.0 → 1.0.02013-08-16

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

0.5.0PHP &gt;=5.3.3

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/879864?v=4)[Dries De Peuter](/maintainers/NoUseFreak)[@NoUseFreak](https://github.com/NoUseFreak)

---

Top Contributors

[![NoUseFreak](https://avatars.githubusercontent.com/u/879864?v=4)](https://github.com/NoUseFreak "NoUseFreak (69 commits)")[![h-wang](https://avatars.githubusercontent.com/u/3410322?v=4)](https://github.com/h-wang "h-wang (8 commits)")[![ozmodiar](https://avatars.githubusercontent.com/u/512738?v=4)](https://github.com/ozmodiar "ozmodiar (3 commits)")[![joostfaassen](https://avatars.githubusercontent.com/u/411113?v=4)](https://github.com/joostfaassen "joostfaassen (1 commits)")

---

Tags

notificationmessages

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

###  Alternatives

[symfony/notifier

Sends notifications via one or more channels (email, SMS, ...)

80640.3M290](/packages/symfony-notifier)[witty/laravel-push-notification

Laravel 5 Package for sending push notifications to Android and iOS devices

245.0k](/packages/witty-laravel-push-notification)[pyrech/composer-notifier

Display desktop notifications when composer finishes to install / update

411.7k](/packages/pyrech-composer-notifier)

PHPackages © 2026

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