PHPackages                             fraserreed/meme-puush - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. fraserreed/meme-puush

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

fraserreed/meme-puush
=====================

Generate a meme to a local file, echo to the screen, or upload to puu.sh using their API

v1.0.2(12y ago)057MITPHPPHP &gt;=5.3.3

Since Apr 7Pushed 12y ago1 watchersCompare

[ Source](https://github.com/fraserreed/meme-puush)[ Packagist](https://packagist.org/packages/fraserreed/meme-puush)[ RSS](/packages/fraserreed-meme-puush/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

meme-puush
==========

[](#meme-puush)

[![Build Status](https://camo.githubusercontent.com/c83d20ebaf67035b3d07f3ed7cf0916ead6ebd1149daa43b3a5143ac0e4929b1/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f667261736572726565642f6d656d652d70757573682e706e673f6272616e63683d6d6173746572)](http://travis-ci.org/fraserreed/meme-puush)[![Coverage Status](https://camo.githubusercontent.com/bab3fea4fe449c49d408d222dd3eb3dba8a08dd092097c02bc3a2bbf5a9d001d/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f667261736572726565642f6d656d652d70757573682f62616467652e706e673f6272616e63683d6d6173746572)](https://coveralls.io/r/fraserreed/meme-puush?branch=master)

Meme generator using Imagick. Either output local file path, to screen or upload to Puu.sh using the Puu.sh API. Puu.sh API key required ()

#### Installation

[](#installation)

Install this package in your application using [composer](http://composer.org).

In the require section, add the following dependency:

```
"fraserreed/meme-puush": "~1.0"

```

#### Usage

[](#usage)

First initialize the image object with an accessible URL to the image:

```
use MemePuush\Image;

$image = new Image( $img );

```

If the image path doesn't exist, an exception will be thrown when trying to output the meme image.

Next set the output format. The options are available in class constants of the `Image` class: `Image::PUUSH` (will upload the result using the Puu.sh api key), `Image::FILE` (will store the result locally and provide the output filename) and `Image::SCREEN` (will output the result to the browser).

```
$image->setOutputFormat( Image::PUUSH, '' );

```

The puu.sh api key is not required if storing the result locally or outputting to the screen.

```
$image->setOutputFormat( Image::FILE );

```

Set the caption string, for the top caption or the bottom caption (or both):

```
$image->setTopCaption( "top caption text" );
$image->setBottomCaption( "bottom caption text" );

```

Finally output the result. What you do with the response is dependent on the format of the output:

```
$outputContent = $image->output();

switch( $output )
{
      case 'screen':
            header( 'Content-type: image/jpg' );
            echo file_get_contents( $outputContent );
            break;

      case 'file':
            echo $outputContent;
            break;

      case 'puush':
            echo json_encode( array( 'url' => $outputContent ) );
            break;
}

```

#### Example

[](#example)

A (really ugly) example UI for creating memes using the three available methods can be seen in `public/index.php`

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity60

Established project with proven stability

 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 ~9 days

Total

3

Last Release

4398d ago

### Community

Maintainers

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

---

Top Contributors

[![fraserreed](https://avatars.githubusercontent.com/u/3450927?v=4)](https://github.com/fraserreed "fraserreed (1 commits)")

---

Tags

memepuush

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/fraserreed-meme-puush/health.svg)

```
[![Health](https://phpackages.com/badges/fraserreed-meme-puush/health.svg)](https://phpackages.com/packages/fraserreed-meme-puush)
```

###  Alternatives

[amplifier/yii-amqp

AMQP adapter for Yii

2237.0k](/packages/amplifier-yii-amqp)

PHPackages © 2026

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