1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
<p align="center">
<img src=doc/images/demo.gif alt="JoliNotif demo" />
</p>
<p align="center">
<a href="https://packagist.org/packages/jolicode/jolinotif"><img src="https://poser.pugx.org/jolicode/jolinotif/downloads" alt="Total Downloads"></img></a>
<a href="https://packagist.org/packages/jolicode/jolinotif"><img src="https://poser.pugx.org/jolicode/jolinotif/v/stable" alt="Latest Stable Version"></img></a>
<a href="https://packagist.org/packages/jolicode/jolinotif"><img src="https://poser.pugx.org/jolicode/jolinotif/v/unstable" alt="Latest Unstable Version"></img></a>
</p>
# About JoliNotif
JoliNotif is a cross-platform PHP library to display desktop notifications.
It works on Linux, Windows or macOS.
Requires PHP >= 8.1 (support for PHP 5 was available in version 1.x, for PHP 7.0
and 7.1 in version < 2.1.0, for PHP 7.2 and 7.3 in version < 2.4.0, for PHP < 8.0 in version 2.6.0).
> [!NOTE]
> This library can not be used in a web context (FPM or equivalent). Use
> it in your CLI scripts or in a [CRON](doc/04-cron-usage.md)
## Installation
Use [Composer](http://getcomposer.org/) to install JoliNotif in your project:
```shell
composer require "jolicode/jolinotif"
```
## Usage
```php
include __DIR__.'/vendor/autoload.php';
use Joli\JoliNotif\Notification;
use Joli\JoliNotif\DefaultNotifier;
$notifier = new DefaultNotifier();
// Create your notification
$notification =
(new Notification())
->setTitle('Notification title')
->setBody('This is the body of your notification')
->setIcon(__DIR__.'/path/to/your/icon.png')
->addOption('subtitle', 'This is a subtitle') // Only works on macOS (AppleScriptDriver)
->addOption('sound', 'Frog') // Only works on macOS (AppleScriptDriver & TerminalNotifierDriver)
;
// Send it
$notifier->send($notification);
```
A [shell executable](doc/05-cli-usage.md) is also provided to use JoliNotif from CLI:
```shell
jolinotif --title "Hello" --body "World"
```
## Further documentation
Discover more by reading the docs:
* [Basic usage](doc/01-basic-usage.md)
* [Notification](doc/02-notification.md)
* [Drivers](doc/03-drivers.md)
* [CRON usage](doc/04-cron-usage.md)
* [CLI usage](doc/05-cli-usage.md)
You can see the current and past versions using one of the following:
* the `git tag` command
* the [releases page on Github](https://github.com/jolicode/JoliNotif/releases)
* the file listing the [changes between versions](CHANGELOG.md)
And finally some meta documentation:
* [versioning and branching models](VERSIONING.md)
* [contribution instructions](CONTRIBUTING.md)
## Credits
* [All contributors](https://github.com/jolicode/JoliNotif/graphs/contributors)
* This project was originally inspired by [mikaelbr/node-notifier](https://github.com/mikaelbr/node-notifier)
## License
JoliNotif is licensed under the MIT License - see the [LICENSE](LICENSE) file
for details.
|