Imgjss is a simple Laravel 4 package that provides handy way of including assets into your .blade.php files.
Now you can use HTML::style(), HTML::script() and HTML::image() via short Blade syntax.
Join our Russian Laravel Community webchat on Gitter!
Avoid putting extensions of js & css files, package adds it automatically:
@js('js/jquery.js')same as:
@js('js/jquery')But as for images, you should use file extensions:
@img('uploads/cat.jpg')Pass attributes array as second parameter:
@css('css/print', ['media' => 'print'])By default package automatically appends last modified timestamp of the file as query string. You can change/disable this behavior in config file or simply pass true/false as third parameter:
@js('js/translations', ['charset' => 'utf-8'], false) // disabled timestamp appendingWhen using Laravel's HTML::image() you pass alt attribute as second param, and other attributes as third.
I think that is not good idea. Using @img syntax this package provides you can pass all in one array:
@img('img/logo.png', ['alt' => 'Alternative text', 'class' => 'brand-logo'])Fourth parameter is for including asset from secure location of your website, e.g. https://.... Its false by default.
And lastly, please notice that package doesn't throw NotFoundException when asset wasn't exist.
- PHP >= 5.4
- Laravel >= 4.0
- The Imgjss package can be installed via Composer by requiring the
elvendor/imgjssin yourcomposer.jsonfile:
{
"require": {
"laravel/framework": "4.*",
"elvendor/imgjss": "0.*"
},
"minimum-stability": "dev"
}- Add Service Provider to providers list:
'providers' => [
// ...
'Elvendor\Imgjss\ImgjssServiceProvider',
],- If you plan to change package defaults, you can also publish config file:
php artisan config:publish elvendor/imgjss- Avoid images extensions by looking for a file on given path (probably not a good idea)
- Setting default js, css, img paths
- Ability to use external assets as well
- Cover with tests
Imgjss is open-sourced software licensed under the MIT license.