wahidinaji/laravel-joypixels

Laravel helper for Joypixels, EmojiOne

Installs: 1

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/wahidinaji/laravel-joypixels

dev-main 2025-09-24 02:52 UTC

This package is auto-updated.

Last update: 2025-09-24 02:53:25 UTC


README

This package causes issues with my Project and Can't install it anymore. Based on the original package by andkab is no longer maintained by the original author and removed from Packagist. I've forked the package and published it to Packagist to fix the issues.

laravel-joypixels ❤️

Software License

😀 🏋🏼 ❤️ ☮

Laravel package to make it easier working with the gorgeous emojis from Joypixels.

Remember to read the Joypixels Free License and provide the appropriate attribution. Or buy a premium license

installation

Via Composer

$ composer require "andkab/laravel-joypixels"
$ composer update
$ php artisan vendor:publish --tag=config --provider="andkab\LaravelJoyPixels\LaravelJoyPixelsServiceProvider"

Usage

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

Example

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.

Assets

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="andkab\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/',

Sprites

If you want to use sprites:

$ php artisan vendor:publish --tag=sprites --provider="andkab\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"/>

License

Remember to read the Joypixels Free License and provide the appropriate attribution. Or buy a premium license