The error “Call to undefined method Intervention\Image\ImageManager::make()” typically happens when you’re trying to use the make() method from the Intervention Image package but haven’t correctly set up the manager or are using the wrong instance.
Solution
Make sure you’re using Intervention\Image\Facades\Image facade, not ImageManager directly.
1. Correct Usage in Laravel
In your controller or wherever you’re using it:
use Intervention\Image\Facades\Image; $image = Image::make($path_to_image);
Note: $path_to_image can be a file path, URL, or uploaded file.
2. Install and Configure (if not done yet)
If you haven’t installed Intervention Image:
composer require intervention/image
Then publish the config (optional):
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
// config/app.php 'aliases' => [ 'Image' => Intervention\Image\Facades\Image::class, ],
Common Mistake
You might be doing this:
use Intervention\Image\ImageManager;
$imageManager = new ImageManager();
$image = $imageManager->make('path/to/image.jpg'); // this fails in Laravel if bindings not used correctly
Instead, in Laravel, just use the facade:
use Intervention\Image\Facades\Image;
$image = Image::make('path/to/image.jpg');
make() — I can tailor the fix exactly!