PHPackages                             imagina/inotification-module - 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. imagina/inotification-module

ActiveLaravel-module[Mail &amp; Notifications](/categories/mail)

imagina/inotification-module
============================

Imagina inotification laravel module

1.0.0(10mo ago)0161PHP

Since Aug 29Pushed 7mo agoCompare

[ Source](https://github.com/imagina/imaginacms-inotification)[ Packagist](https://packagist.org/packages/imagina/inotification-module)[ RSS](/packages/imagina-inotification-module/feed)WikiDiscussions main Synced today

READMEChangelogDependenciesVersions (3)Used By (0)

imaginacms-inotification
========================

[](#imaginacms-inotification)

SEED MODULE (Providers)
-----------------------

[](#seed-module-providers)

```
php artisan module:seed Inotification
```

Implements notifications in Modules
-----------------------------------

[](#implements-notifications-in-modules)

### In Module Entity Events

[](#in-module-entity-events)

1. In the Model-&gt;dispatchesEventsWithBindings add the \[path\] and \[extraData\] attributes in the event. Example: Send a notification after the model is updated:

```
 public $dispatchesEventsWithBindings = [
        //eg. ['path' => 'path/module/event', 'extraData' => [/*...optional*/]]
        'created' => [],
        'creating' => [],
        'updated' => [[
            'path' => 'Modules\Inotification\Events\SendNotification',
            'extraData' => ['event' => 'updated']
        ]],
        'updating' => [],
        'deleting' => [],
        'deleted' => []
    ];
```

2. In the model, add the method getNotificableParams(), and inside that attributes that you need to change. Example:

```
/**
* Notification Params
*/
public function getNotificableParams()
{
    //Process to get Email (Example: From entity, or settings, etc)
    $email = 'emailto@example.com';

    return [
        'created' => [
            "email" => $email,
            "title" =>  itrans("iuser::users.email.created.title"),
            "message" => itrans("iuser::users.email.created.messages")
        ],
        'updated' => [
            "email" => $email,
            "title" => itrans("iuser::users.email.updated.title"),
            "message" => itrans("iuser::users.email.updated.messages")
        ],
        'deleted' => [
            "email" => $email,
            "title" => itrans("iuser::users.email.deleted.title"),
            "message" => itrans("iuser::users.email.deleted.messages")
        ],
    ];
}
```

### Call directly

[](#call-directly)

- You can directly use the service to send a notification. Example:

```
use Modules\Inotification\Services\NotificationDispatcherService;

$data = [
    'title' => itrans("inotification::notification.email.default.title"),
    'message' => itrans("inotification::notification.email.default.message"),
    'email' => 'emailto@example.com'
];

 app(NotificationDispatcherService::class)->execute($data);
```

View Default Layout
-------------------

[](#view-default-layout)

You can view the email design (default) by accessing this path:

```
http://exampleurl.com/inotification/v1/preview-email
```

If in addition to displaying it, you also need it to be sent, you can add the email attribute:

```
http://exampleurl.com/inotification/v1/preview-email?email=example@email.com
```

You can also use a module's config to load a specific view with its data.

```
http://exampleurl.com/inotification/v1/preview-email?config=imodule.entityTestEmail
```

Important: Only works for the LOCAL environment

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance59

Moderate activity, may be stable

Popularity7

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 Bus Factor1

Top contributor holds 50% 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 ~73 days

Total

2

Last Release

235d ago

Major Versions

1.0.0 → v12.x-dev2025-11-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/2bc4bd5d733cfbe7e145670fbb1539bdb8d33f43c2cca4f26a119d37dfbad62f?d=identicon)[imagina](/maintainers/imagina)

---

Top Contributors

[![imagina](https://avatars.githubusercontent.com/u/758247?v=4)](https://github.com/imagina "imagina (1 commits)")[![msolanogithub](https://avatars.githubusercontent.com/u/38920570?v=4)](https://github.com/msolanogithub "msolanogithub (1 commits)")

### Embed Badge

![Health badge](/badges/imagina-inotification-module/health.svg)

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

###  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)
