Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Glide Laravel Package

league/glide

Glide is an on-demand PHP image manipulation library served over HTTP. Resize, crop, and apply effects with simple URL parameters, with automatic caching and far-future headers. Works with GD, Imagick, or libvips and Flysystem storage.

View on GitHub
Deep Wiki
Context7

Wonderfully easy on-demand image manipulation library with an HTTP based API.

Frequently asked questions about Glide
How do I integrate Glide into a Laravel application for on-demand image processing?
Install via Composer (`composer require league/glide`), then configure it in your `AppServiceProvider` using `ServerFactory::create()` with paths for source images, cache, and base URL. Route `/img/*` requests to Glide’s middleware or use Blade directives like `@glideImage` for dynamic URLs.
Which PHP image libraries does Glide support (GD, Imagick, libvips), and how do I choose?
Glide supports GD (default), Imagick (better performance for complex tasks), and libvips (fastest for large images). Choose based on your server setup: libvips requires extension installation but offers superior speed, while GD is universally available but slower for high-res processing.
Can Glide be deployed as a standalone microservice for Laravel, or must it run within the app?
Glide works as both an embedded library and a standalone service. For microservice use, deploy it behind a CDN or proxy (e.g., Nginx) and route `/img/*` requests to its HTTP endpoint. Use Docker or a separate PHP process for isolation.
How does Glide’s caching work, and how can I prevent cache bloat in production?
Glide caches generated images with far-future headers by default. To manage cache size, set a TTL (e.g., `cache_ttl` in config) or use Flysystem’s cleanup methods. For high-traffic apps, pair with a CDN to offload caching and set storage limits via Flysystem adapters.
Does Glide support signed URLs for secure image delivery in Laravel?
Yes, Glide supports optional signed URLs via HTTP signatures. Implement custom middleware to validate signatures before serving private images (e.g., user uploads). This prevents unauthorized access while maintaining on-demand processing.
What Laravel versions does Glide officially support, and are there compatibility issues?
Glide is tested with Laravel 10+ and PHP 8.1+. Older Laravel versions may require adjustments for route/model binding or PSR-7 middleware. Check the [GitHub issues](https://github.com/thephpleague/glide/issues) for version-specific fixes.
How can I monitor Glide’s performance (e.g., cache hit/miss ratios) in a Laravel app?
Log cache hits/misses by extending Glide’s `Cache` class or using middleware to track requests. For production, integrate with Laravel’s logging or monitoring tools (e.g., Sentry) to alert on cache failures or latency spikes.
What are the best practices for storing images with Glide in Laravel (local vs. S3 vs. custom)?
Use Flysystem adapters for flexibility: local storage for simplicity, S3/R2 for scalability, or custom adapters for niche needs. Validate adapter performance under load and ensure backup/recovery plans for critical media.
Can Glide handle async image processing (e.g., resizing uploads) in Laravel?
Yes, trigger Glide via Laravel Queues or commands for async processing. Store originals in a queue, then dispatch a job to generate thumbnails using Glide’s `Server` instance. Combine with Flysystem for storage abstraction.
What alternatives to Glide exist for Laravel, and when should I consider them?
Alternatives include Cloudinary, Imgix, or AWS ImageOptim for managed services (lower dev overhead but higher cost). Use Glide if you need self-hosted control, cost efficiency, or custom processing logic. Compare performance benchmarks for your workload.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope
anil/file-picker
broqit/fields-ai