You can try laravel-image-upload package including intervention
composer require rashiqulrony/laravel-image-upload
Doc: https://packagist.org/packages/rashiqulrony/laravel-image-upload
Using Controller for Image Upload
/**
* Upload an image with optional resizing and thumbnail creation.
*
* @param mixed $requestFile Uploaded file from the request.
* @param string $path Destination folder path.
* @param bool $thumb Generate thumbnail or not.
* @param string|null $name Optional custom filename.
* @param array $imageResize Resize dimensions [width, height].
* @param array $thumbResize Thumbnail dimensions [width, height].
* @return array Uploaded image information.
*/
return Uploader::imageUpload($request->image, $path, 1, $name, [300, 300], [200, 200]);
Response
{
"name": "1744802578-60164bb368db6.jpg",
"originalName": "60164bb368db6.jpg",
"size": 24418,
"ext": "jpg",
"url": "http://127.0.0.1:8000/storage/upload/1744802578-60164bb368db6.jpg",
"thumbUrl": "http://127.0.0.1:8000/storage/upload/thumb/1744802578-60164bb368db6.jpg"
}