marchiorineto / cloudflare-images-laravel
Provides access to the Cloudflare Images service for Laravel.
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 2
pkg:composer/marchiorineto/cloudflare-images-laravel
Requires
- php: ^8.2
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.3
This package is not auto-updated.
Last update: 2025-12-11 18:52:21 UTC
README
Provides access to Cloudflare Images service for Laravel.
Table of contents
Installation
To get the latest version of CloudflareImagesLaravel, simply require the project using Composer:
composer require marchiorineto/cloudflare-images-laravel
Or manually update the require block of composer.json and run composer update.
{
"require": {
"marchiorineto/cloudflare-images-laravel": "^1.0.0"
}
}
Configuration
Set environment variables:
CLOUDFLARE_IMAGES_ACCOUNT- Cloudflare account IDCLOUDFLARE_API_TOKEN- Cloudflare API tokenCLOUDFLARE_IMAGES_KEY- Create a CF images key under the Images section of your Cloudflare accountCLOUDFLARE_IMAGES_DELIVERY_URL- Copy the images delivery base url from the Cloudflare images dashboard
Usage
Create a variant
use MarchioriNeto\CloudflareImagesLaravel\CloudflareImages; use MarchioriNeto\CloudflareImagesLaravel\ImageVariant; $variant = new ImageVariant('tiny'); $variant->fit('contain') ->width(50) ->height(50) ->metaData('keep'); $cfImages = new CloudflareImages(); $cfImages->createVariant($variant);
Upload an image
use MarchioriNeto\CloudflareImagesLaravel\CloudflareImages; $cfImages = new CloudflareImages(); // Pass either a file path or a file resource as the first parameter. // If you want the image to be private (always require signed urls), pass true as the second parameter. $cfImages->upload('/path/to/image.jpg', true);
Generate a signed URL
use MarchioriNeto\CloudflareImagesLaravel\CloudflareImages; $cfImages = new CloudflareImages(); $cfImages->getSignedUrl('image-uuid', new DateTime('+1 day'));
Overriding configuration
You can override the environment variables by passing new properties to the CloudflareImages constructor.
use MarchioriNeto\CloudflareImagesLaravel\CloudflareImages; $cfImages = new CloudflareImages('CLOUDFLARE_IMAGES_ACCOUNT', 'CLOUDFLARE_API_TOKEN', 'CLOUDFLARE_IMAGES_KEY', 'CLOUDFLARE_IMAGES_DELIVERY_URL');
Based on
work from https://github.com/alexbuckham/CloudflareImagesLaravel