PHPackages                             webiny/notification-manager - 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. webiny/notification-manager

ActiveWebiny-app[Mail &amp; Notifications](/categories/mail)

webiny/notification-manager
===========================

v1.1.0(8y ago)2127JavaScript

Since May 31Pushed 8y ago8 watchersCompare

[ Source](https://github.com/Webiny/NotificationManager)[ Packagist](https://packagist.org/packages/webiny/notification-manager)[ RSS](/packages/webiny-notification-manager/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (2)DependenciesVersions (7)Used By (0)

Notification Manager
====================

[](#notification-manager)

Notification Manager app provides a user-friendly interface for creating transactional emails similar to Mandrill with a few additional features that make your development life a lot easier.

The system keeps track of your email variables and will not send your email if there are any missing replacement values, which will spare you from embarrassment and unprofessional looking emails.

Besides the regular email templates, you are also able to create email layout templates (for your header, footer, etc.) and save you some time maintaining dozens and even hundreds of templates when your company contact info or social media accounts change.

Sending email with attachments from PHP
---------------------------------------

[](#sending-email-with-attachments-from-php)

```
/* @var NotificationManager $nm */
$nm = $this->wService('NotificationManager');
$notification = $nm->getNotification('test');

$file = new File('webiny.json', $this->wStorage('YourStorage'));
$notification->addAttachment($file, 'custom.json', 'application/json');

// the recipient needs to be instance of Recipients\Email, based on that notification manager know what type of notification to send
$recipient = new \Apps\NotificationManager\Php\Lib\Recipients\Email('client@gmail.com', 'ClientName');
$notification->setRecipient($recipient);
$notification->send();
```

Instant Send
------------

[](#instant-send)

If you don't want your emails to be added to the queue, but you want them to be sent instantly, just set `NotificationManager.InstantSend`to `true` in your config. This is useful for development, so you don't wait for the cron job to trigger for in order to receive your email.

```
NotificationManager:
  InstantSend: true
```

Reroute sending
---------------

[](#reroute-sending)

In situations where you would need to reroute emails, i.e. you downloaded a production database with customer data, but you don't want the system to accidentally send an email to that customer. You can tell to the notification system that all emails should be sent to a specific email, regardless to what the email queue says.

```
NotificationManager:
  Reroute: me@mail.com
```

All notifications will now be sent to `me@mail.com`.

Email content - template
------------------------

[](#email-content---template)

The email content field is parsed by Smarty template engine. This enables you to write an if or a foreach loop, amongst many other stuff that smarty supports. You can also write variables like {$object.attribute} in case if you want to access child parameters, or array keys.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 68.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 ~10 days

Total

4

Last Release

3166d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4440afa738ed146b05c06073a90345e0464c4f4d042b039532d881ca24859d77?d=identicon)[SvenAlHamad](/maintainers/SvenAlHamad)

---

Top Contributors

[![Pavel910](https://avatars.githubusercontent.com/u/3920893?v=4)](https://github.com/Pavel910 "Pavel910 (137 commits)")[![SvenAlHamad](https://avatars.githubusercontent.com/u/3808420?v=4)](https://github.com/SvenAlHamad "SvenAlHamad (64 commits)")

---

Tags

emailnotificationsslacktransactional-emailswebiny

### Embed Badge

![Health badge](/badges/webiny-notification-manager/health.svg)

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

###  Alternatives

[maize-tech/laravel-email-domain-rule

Laravel Email Domain Rule

612.0k](/packages/maize-tech-laravel-email-domain-rule)[sarfraznawaz2005/noty

Laravel package to incorporate noty flash notifications into laravel.

324.5k](/packages/sarfraznawaz2005-noty)

PHPackages © 2026

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