PHPackages                             stratease/imagi-fly - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. stratease/imagi-fly

Abandoned → [stratease/imagifly](/?search=stratease%2Fimagifly)Library[Image &amp; Media](/categories/media)

stratease/imagi-fly
===================

PHP Image Filter library

v0.2.7(8y ago)314PHPPHP &gt;=5.4.0

Since Jun 10Pushed 8y ago5 watchersCompare

[ Source](https://github.com/stratease/ImagiFly)[ Packagist](https://packagist.org/packages/stratease/imagi-fly)[ RSS](/packages/stratease-imagi-fly/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (1)Versions (9)Used By (0)

ImagiFly
========

[](#imagifly)

PHP Library to process images through any number of filter effects, based on a single source image. Web API Inspired by

Makes use of the [Intervention Image](https://github.com/Intervention/image) library for image processing.

Example
-------

[](#example)

```

```

The first portion of the path is the image builder path prepend `/image-builder/` which denotes the remaining portion of the path is to be handled by the parser.

Next is the path to the image `/path/to/my/file.png`. These should typically be a transparent images to allow certain filters to operate appropriately.

And finally there are 2 filters being applied to this image. A special resizing filter `/225x225/` which denotes a 225 pixel width and 225 pixel height, respectively. Followed by `/overlay:2/` an overlay filter, specifying 2 duplicates of the original image to be positioned next to each other.

If we had used an original image of ...

[![original file](https://github.com/stratease/ImagiFly/raw/master/demo/images/chipmunks-are-awesome.png)](https://github.com/stratease/ImagiFly/raw/master/demo/images/chipmunks-are-awesome.png)

... after utilizing ImagiFly's filter path, the resulting image would be

[![parsed file](https://github.com/stratease/ImagiFly/raw/master/demo/parsed-chipmunk.png)](https://github.com/stratease/ImagiFly/raw/master/demo/parsed-chipmunk.png)

Setup
-----

[](#setup)

Check out our [demo](https://github.com/stratease/ImagiFly/tree/master/demo) to see an example setup.

It's important to note that on the backend we have a server directive to route to our PHP image builder file based on the `/image-builder/...` path.

This will provide a level of overhead for each requested image, and is not recommended for very high traffic sites. We do provide a level of caching to avoid redundant image processing.

Our .htaccess for apache

```
RewriteEngine On
RewriteRule ^image-builder/.*$ image-builder.php [NC,L]
```

This redirects to our backend script that handles the route parsing and image manipulation.

```
use stratease\ImagiFly\Builder;
use stratease\ImagiFly\RequestParser;
require_once("../vendor/autoload.php");
require_once("PinkFilter.php");

$builder = new Builder(['baseDirectory' => __DIR__.'/images/', // Path where we store base images. Can be in web directory or any location
    'cache' => false, // Lets disable the cache so we can see our PinkFilter adjustments per request.
    // Our request parser. You can provide your own by implementing the RequestParserInterface
    'requestParser' => new RequestParser(['requestPath' => $_SERVER['REQUEST_URI'],
                                            'pathPrepend' => 'image-builder'])]);

// this is how we register a custom filter, in our case an awesome PinkFilter
$builder->addFilterExtension(PinkFilter::getFilterMask(), new PinkFilter());

$builder->output(); // This will compile and output the image.

// Try this path.. /image-builder/chipmunks-are-awesome.png/225x225/overlay:2/pink:unicorn/
// it'll blow your mind!
```

This implementation also has an example of how to setup a [custom filter](https://github.com/stratease/ImagiFly/raw/master/demo/PinkFilter.php). Refer to the [FilterInterface](https://github.com/stratease/ImagiFly/blob/master/src/Filter/FilterInterface.php) for further documentation.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~184 days

Recently: every ~321 days

Total

8

Last Release

3073d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d67af6523707f4b614c0a20762ceecf4deca64b0a6e83e0b4865bbfa8879e733?d=identicon)[stratease](/maintainers/stratease)

---

Top Contributors

[![stratease](https://avatars.githubusercontent.com/u/2826045?v=4)](https://github.com/stratease "stratease (3 commits)")

### Embed Badge

![Health badge](/badges/stratease-imagi-fly/health.svg)

```
[![Health](https://phpackages.com/badges/stratease-imagi-fly/health.svg)](https://phpackages.com/packages/stratease-imagi-fly)
```

###  Alternatives

[league/glide

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

2.6k51.2M116](/packages/league-glide)[jenssegers/imagehash

Perceptual image hashing for PHP

2.1k2.2M5](/packages/jenssegers-imagehash)[intervention/image-laravel

Laravel Integration of Intervention Image

1536.5M102](/packages/intervention-image-laravel)[bkwld/croppa

Image thumbnail creation through specially formatted URLs for Laravel

510496.0k23](/packages/bkwld-croppa)[lasserafn/php-initial-avatar-generator

A package to generate avatars with initials for PHP

4374.2M13](/packages/lasserafn-php-initial-avatar-generator)[rtippin/messenger

Laravel messenger suite.

45035.8k4](/packages/rtippin-messenger)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
