Laravel helper for Joypixels emojis
sloyakuza/laravel-joypixel-emojis is a Laravel package for laravel helper for joypixels emojis.
It currently has 0 GitHub stars and 1.773 downloads on Packagist (latest version v2.0.0).
Install it with composer require sloyakuza/laravel-joypixel-emojis.
Discover more Laravel packages by sloyakuza
or browse all Laravel packages to compare alternatives.
Last updated
Laravel package to make it easier working with the modern emojis from Joypixels.
Via Composer
$ composer require "sloyakuza/laravel-joypixel-emojis"
$ composer update
If you are on a Laravel that does not have Auto Discovery or you have it disabled then you need to add the following to your config/app.php file:
Add the ServiceProvider to the providers array in config/app.php
sloyakuza\LaravelJoyPixels\LaravelJoyPixelsServiceProvider::class,
Add this to the aliases array in config/app.php
'LaravelJoyPixels' => sloyakuza\LaravelJoyPixels\LaravelJoyPixelsFacade::class,
Config:
$ php artisan vendor:publish --tag=config --provider="sloyakuza\LaravelJoyPixels\LaravelJoyPixelsServiceProvider"
LaravelJoyPixels::toShort($str); // - native unicode -> shortnames
LaravelJoyPixels::shortnameToImage($str); // - shortname -> images
LaravelJoyPixels::unicodeToImage($str); // - native unicode -> images
LaravelJoyPixels::toImage($str); // - native unicode + shortnames -> images (mixed input)
Blade (equivalent to LaravelJoyPixels::toImage($str)):
@joypixels(':smile:') -> ![]()
@joypixels(':smile: β€οΈ') -> ![]()
![]()
π¨ The output is not escaped so be careful with what you pass into @joypixels.
More details about how toImage($str) works can be found at https://github.com/Ranks/emojione/blob/master/examples/PHP.md
You want to let users put emoji a comment.
When you are saving a comment, you might want to run the content through LaravelJoyPixels::toShort($str) to convert π and other emoji to :smile: etc.
Comment::create([
'content' => LaravelJoyPixels::toShort(request('content'))
]);
So if someone leaves a comment like This is an awesome comment ππ₯ it will be saved as This is an awesome comment :smile: :fire:
In your view where you display your comments you can use
@joypixels($comment->content)
and that will convert :smile: and π to the emojione equivalent.
By default it will use the assets from JSDelivr.
Remember to run this before trying to publish any of the assets:
composer require joypixels/assets
If you want to serve the assets yourself you can publish them with the following commands. Remember to update config/joypixels.php
PNG files in sizes 32/64/128:
$ php artisan vendor:publish --tag=public --provider="sloyakuza\LaravelJoyPixels\LaravelJoyPixelsServiceProvider"
In config/joypixels.php specify the local path. Remember to specify which size you want in the path (32/64/128).
'imagePathPNG' => '/vendor/joypixels/png/64/',
If you want to use sprites:
$ php artisan vendor:publish --tag=sprites --provider="sloyakuza\LaravelJoyPixels\LaravelJoyPixelsServiceProvider"
In config/joypixels.php enable sprites:
'sprites' => true,
'spriteSize' => 32, // 32 or 64
Add the stylesheet to your HTML:
<link rel="stylesheet" href="/vendor/joypixels/sprites/emojione-sprite-{{ config('emojione.spriteSize') }}.min.css"/>