Skip to content

A simple, yet efficient solution for image resizing and caching with Laravel

License

Notifications You must be signed in to change notification settings

nickdekruijk/imageresize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Latest Stable Version Latest Unstable Version Monthly Downloads Total Downloads License

ImageResize for Laravel

A simple, yet efficient solution for image resizing and caching with Laravel. Based on my previous imageresize package, now renamed to nickdekruijk/imageresize-legacy.

Installation

To install the package use

composer require nickdekruijk/imageresize

Configuration

After installing for the first time publish the config file with

php artisan vendor:publish --tag=config --provider="NickDeKruijk\ImageResize\ServiceProvider"

A default config file called imageresize.php will be available in your Laravel /config folder. See this file for more details.

How does it work

Let's assume you have an image in /public/media/images/test.jpg and a template called thumbnail. And have set the imageresize.route config to media/resized.

Referring to http://domain.com/media/resized/thumbnail/images/test.jpg will trigger the imageresize route in laravel since the file doesn't exist. Imageresize then creates the resized image and saves it as /public/media/resized/thumbnail/images/test.jpg.

So the next time you refer to http://domain.com/media/resized/thumbnail/images/test.jpg the file does exist and the image is served without triggering any php/laravel code for optimal performance.

Drawbacks

There is however one disadvantage: if the original image is edited or removed the resized file will still remain the same since referring to it doesn't trigger the imageresize package. You will have to manually delete it or use the php artisan imageresize:delete command to delete all resized images from the media/resized folder.

About

A simple, yet efficient solution for image resizing and caching with Laravel

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages