Weave 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

Imagine Filters Laravel Package

zenstruck/imagine-filters

Adds a set of reusable image filters on top of the Imagine library, making common manipulations like resizing, cropping, thumbnails, and watermarking easier to configure and chain in PHP applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for image processing primitives. This package is a catalog of ready-made Imagine filter definitions (blur, grayscale, colorize, watermark, thumbnail, background, strip, interlace, auto-rotate, and similar). Evaluating it forces the useful PM question: are our image needs a commodity we should consume off the shelf, or differentiators worth owning? The filter list itself is a good requirements checklist for a media pipeline epic.
  • Feature scoping for media/upload roadmaps. If a feature request reads "let admins blur the hero image" or "auto-orient phone uploads" or "stamp a watermark on user photos," this package demonstrates the granularity at which those capabilities are typically expressed as composable filters — useful for writing acceptance criteria and estimating story size.
  • Architecture direction: Imagine vs. alternative imaging stacks. Adopting this package locks you into the Imagine abstraction. That is a roadmap-level commitment, not a library choice. The decision to evaluate it is really the decision of whether to standardize on Imagine at all — so treat it as an input to a platform decision, not a ticket.
  • Legacy modernization prioritization. If this shows up in a dependency audit of an inherited codebase, it is a signal that a portion of the media stack has not been touched in roughly a decade. That informs sequencing of technical-debt work and where to budget migration effort.
  • Vendor/supply-chain risk policy. With 2 stars, zero dependents, and an archived repository, it is a clean worked example for the "unmaintained dependency" rule your team should have — and a prompt to decide whether that rule exists in writing.

Net PM read: this package is not a viable dependency for new work. Its value is as a requirements reference and a risk-case study, not as an adoption candidate.

When to Consider This Package

Consider it only in narrow, already-constrained circumstances:

  • You are maintaining an existing Symfony/LiipImagineBundle-era application that already depends on zenstruck/imagine-filters, and you need to understand, patch, or plan removal of that dependency.
  • You need a compact, MIT-licensed reference implementation of individual filter classes and want to vendor or reimplement two or three of them rather than depend on the package.
  • You are deliberately building on the Imagine abstraction for reasons independent of this package (e.g., existing investment in Imagine-based tooling) and want a starting point for custom filters.

Look elsewhere — decisively — when any of the following is true:

  • Greenfield or actively developed Laravel application. Use intervention/image (Laravel-native, actively maintained, first-class facade/service provider integration), league/glide for URL-driven dynamic resizing, or spatie/image for a fluent, Laravel-friendly API. These cover the same filter surface with current PHP support and security maintenance.
  • You need a supported dependency. The last release was December 2014 and the repository is archived. There are no security patches, no PHP 8 compatibility guarantees, and no maintainer to escalate to. Zero dependents means no downstream community pressure to fix anything.
  • You need Laravel integration. There is no service provider, no config publishing, no facade. You would be writing and owning that glue yourself, converting a "cheap adoption" into a small internal package with a permanent maintenance cost.
  • You are on modern PHP. The package predates PHP 7. Expect to validate compatibility and possibly fork before it will even install cleanly.

Adoption criteria in one line: only with an existing Imagine footprint, a willingness to fork, and no modern alternative available — a combination that is rare in Laravel work today.

How to Pitch It (Stakeholders)

To executives (one paragraph): We evaluated an open-source image-filtering add-on as a candidate for our media pipeline and are recommending against adoption. It was last released in 2014, the project is archived, and it has effectively no user base — meaning no one is fixing bugs or security issues in it. The capabilities it offers (blur, watermark, thumbnail, auto-rotate) are fully available in actively maintained alternatives that integrate natively with our framework, so choosing the modern option carries no feature trade-off and materially lowers our maintenance and security exposure. The only scenario where it matters is if we discover it already embedded in an inherited system, in which case we should schedule its removal.

To engineering (summary):

  • Verdict: Do not adopt for new work. Recommend intervention/image as the default, with league/glide or spatie/image as alternatives depending on whether we want URL-driven dynamic transforms or a fluent server-side API.
  • Why: Archived repo, last release 2014-12-05, 2 stars, 0 dependents, no Laravel service provider, pre-PHP-7 provenance. Adopting it means owning a fork plus integration glue indefinitely.
  • If we find it in our code: Do not rip it out blindly. Inventory which filters are actually in use (typically a handful), confirm behavioral parity in the replacement, then migrate behind the existing interface. The filter classes are small and MIT-licensed, so the risky path is cheap to exit.
  • Use it for: a requirements checklist of which image operations we need to support, and as the canonical example in our dependency-health policy for when a library should be rejected on maintenance grounds alone.

Decision requested: No budget or headcount. A one-line policy ruling — "unmaintained dependencies require an explicit exception" — and, if applicable, a ticket to scope removal from any legacy system where it appears.

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.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast