PHPackages                             skovachev/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. skovachev/notifier

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

skovachev/notifier
==================

Laravel 4 package for sending SMS and email notifications

8256PHP

Since Oct 13Pushed 11y ago5 watchersCompare

[ Source](https://github.com/skovachev/notifier)[ Packagist](https://packagist.org/packages/skovachev/notifier)[ RSS](/packages/skovachev-notifier/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Notifier [![Build status](https://camo.githubusercontent.com/c842408b6ae3a7f2c34a687b158b3dd75edf9cefdcde9874d356ec0e946ac507/68747470733a2f2f6170692e7472617669732d63692e6f72672f736b6f7661636865762f6e6f7469666965722e706e67)](https://camo.githubusercontent.com/c842408b6ae3a7f2c34a687b158b3dd75edf9cefdcde9874d356ec0e946ac507/68747470733a2f2f6170692e7472617669732d63692e6f72672f736b6f7661636865762f6e6f7469666965722e706e67)
======================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#notifier-)

Some projects require user notifications to be sent out. In many cases there are multiple ways to notify an user about an event. This package makes it easier to send notifications using different notification channels.

Installation
------------

[](#installation)

You'll need to add the package to you `composer.json` file.

```
"require-dev": {
    "skovachev/notifier": "dev-master"
}
```

Then you need to run `composer install` to download the package contents and update the autoloader.

Once it's installed you will need to register its service provider with your application. Open up `app/config/app.php` and add the following update your `providers` key.

```
'providers' => array(
    'Skovachev\Notifier\ServiceProvider',
)
```

You'll also need to update your `aliases` key as well.

```
'aliases' => array(
    'Notifier' => 'Skovachev\Notifier\Facade',
)
```

That's it.

Usage
-----

[](#usage)

The package provides two ways of sending a notification out of the box: SMS and Email. SMS uses the Twilio SDK while Email uses the built in mailing functionality of Laravel.

To send a notification using both notifiers you need to do the following:

```
$notification = Notifier::createNotification($user, $view); // create notification with 1. user to be notifier and 2. view template

// set data needed to render the view template
$notification->setViewData($data);

// set subject of notification
$notification->setSubject('Your message');

// send notification
Notifier::sendNotification($notification);
```

By default Notifier will try to load the view template using the following path: `notifications//`. For instance if we had a view named 'welcome\_message' the path to the email templated would be `notifications/email/welcome_message` and for the SMS - `notifications/sms/welcome_message`. The base folder for these templates can be changed in the package `config.php` (See [Settings](#settings) for more information).

In some cases you may want to send a notification using only a subset of all available notification channels. In that case you can simply pass a list of Notifier keys along with the Notification object:

```
Notifier::sendNotification($notification, ['email']);
```

If you wanted to send a notification using just a single channel you can do that using the following syntax as well:

```
Notifier::sendEmailNotification($notification);
```

Settings
--------------------------------------------

[](#settings)

If you wanted to change some package settings you can do so by publishing the configuration:

```
php artisan config:publish skovachev/notifier

```

and editing the package's `config.php`.

There you'll be able to set the base folder for notification templates, enable / disable notifiers, set notifier options and custom getters.

### Getters

[](#getters)

Getters are closures defined in the package's `config.php`. They allow you to define how notifiers extract contact information from the passed used object. In the case of the Email Notifier you could define the values of the *email* and *name* attributes associated with the Email message.

License
-------

[](#license)

Notifier is released under the MIT Licence. See the bundled LICENSE file for details.

Contributions
-------------

[](#contributions)

Please do not hesitate to send suggestions and feature requests. Let's make this package awesome!

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/67ebbb507d16ba5ba1cd932e8a9d6f0308ca7b6408a99bfbed9e28f42b9fe91e?d=identicon)[skovachev](/maintainers/skovachev)

---

Top Contributors

[![skovachev](https://avatars.githubusercontent.com/u/1137946?v=4)](https://github.com/skovachev "skovachev (15 commits)")

### Embed Badge

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

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

###  Alternatives

[tijsverkoyen/css-to-inline-styles

CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.

5.8k505.3M227](/packages/tijsverkoyen-css-to-inline-styles)[minishlink/web-push

Web Push library for PHP

1.9k12.0M53](/packages/minishlink-web-push)[laravel-notification-channels/twilio

Provides Twilio notification channel for Laravel

2587.7M12](/packages/laravel-notification-channels-twilio)[spatie/url-signer

Generate a url with an expiration date and signature to prevent unauthorized access

4422.3M16](/packages/spatie-url-signer)[mattketmo/email-checker

Throwaway email detection library

2742.0M5](/packages/mattketmo-email-checker)[laravel-notification-channels/discord

Laravel notification driver for Discord.

2371.3M11](/packages/laravel-notification-channels-discord)

PHPackages © 2026

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