PHPackages                             99designs/phumbor - 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. 99designs/phumbor

ActiveLibrary[Image &amp; Media](/categories/media)

99designs/phumbor
=================

A minimal Thumbor library for PHP

1.2.2(9y ago)1252.3M—3.3%42[4 issues](https://github.com/99designs/phumbor/issues)[4 PRs](https://github.com/99designs/phumbor/pulls)6MITPHPCI passing

Since May 27Pushed 3mo ago78 watchersCompare

[ Source](https://github.com/99designs/phumbor)[ Packagist](https://packagist.org/packages/99designs/phumbor)[ Docs](https://github.com/99designs/phumbor)[ RSS](/packages/99designs-phumbor/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (3)Dependencies (1)Versions (15)Used By (6)

Phumbor
=======

[](#phumbor)

A minimal PHP client for generating [Thumbor](https://github.com/globocom/thumbor) URLs.

[![Build Status](https://camo.githubusercontent.com/766fb70fd0fd8f99319343814b75ac2bbb5483a2abe1077e433770c99d19c4da/68747470733a2f2f7472617669732d63692e6f72672f393964657369676e732f7068756d626f722e706e67)](https://travis-ci.org/99designs/phumbor)

Usage
-----

[](#usage)

You construct a `Thumbor\Url` using a `Thumbor\Url\Builder`:

```
$server = 'http://thumbor.example.com:1234';
$secret = 'my-secret-key';

echo Thumbor\Url\Builder::construct($server, $secret, 'http://images.example.com/llamas.jpg')
    ->fitIn(640, 480)
    ->addFilter('fill', 'green');

// => http://thumbor.example.com:1234/OFDRoURwi9WVbZNfeOJVfIKr1Js=/fit-in/640x480/filters:fill(green)/http://images/example.com/llamas.jpg
```

To reuse your server/secret combination, create a `Thumbor\Url\BuilderFactory`:

```
$thumbnailUrlFactory = Thumbor\Url\BuilderFactory::construct($server, $secret);

echo $thumbnailUrlFactory
    ->url('http://images.example.com/llamas.jpg')
    ->fitIn(640, 480)
    ->addFilter('fill', 'green');

echo $thumbnailUrlFactory
    ->url('http://images.example.com/butts.png')
    ->crop(20, 20, 300, 300)
    ->valign('middle');

// etc
```

Installation
------------

[](#installation)

Add `99designs/phumbor` as a dependency in [`composer.json`](https://getcomposer.org/).

A [Laravel 4 package](https://github.com/ceejayoz/laravel-phumbor) and a [Symfony2 Bundle](https://github.com/jbouzekri/PhumborBundle) are also available.

License
-------

[](#license)

MIT; see [`LICENSE`](https://github.com/99designs/phumbor/blob/master/LICENSE)

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance53

Moderate activity, may be stable

Popularity58

Moderate usage in the ecosystem

Community37

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 77.1% 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 ~133 days

Recently: every ~167 days

Total

11

Last Release

3403d ago

Major Versions

0.1.3 → 1.0.02014-04-12

### Community

Maintainers

![](https://www.gravatar.com/avatar/61d94165c13417941a32d14d4468f27868c7643e96495090cfd33009055ea48c?d=identicon)[mtibben](/maintainers/mtibben)

![](https://avatars.githubusercontent.com/u/1178572?v=4)[Giacomo Gatelli](/maintainers/arthens)[@arthens](https://github.com/arthens)

![](https://www.gravatar.com/avatar/077206ec25224ef22d3151c8d6803444c5a0dfb5c9977d8e28d1da3c51ae0534?d=identicon)[sinamt](/maintainers/sinamt)

---

Top Contributors

[![harto](https://avatars.githubusercontent.com/u/103448?v=4)](https://github.com/harto "harto (37 commits)")[![prolificphotis](https://avatars.githubusercontent.com/u/6548403?v=4)](https://github.com/prolificphotis "prolificphotis (2 commits)")[![ebaioni](https://avatars.githubusercontent.com/u/2899310?v=4)](https://github.com/ebaioni "ebaioni (1 commits)")[![estahn](https://avatars.githubusercontent.com/u/362174?v=4)](https://github.com/estahn "estahn (1 commits)")[![jbouzekri](https://avatars.githubusercontent.com/u/880996?v=4)](https://github.com/jbouzekri "jbouzekri (1 commits)")[![LeonB](https://avatars.githubusercontent.com/u/3979?v=4)](https://github.com/LeonB "LeonB (1 commits)")[![Nyholm](https://avatars.githubusercontent.com/u/1275206?v=4)](https://github.com/Nyholm "Nyholm (1 commits)")[![virtuman](https://avatars.githubusercontent.com/u/1087996?v=4)](https://github.com/virtuman "virtuman (1 commits)")[![ceejayoz](https://avatars.githubusercontent.com/u/2825?v=4)](https://github.com/ceejayoz "ceejayoz (1 commits)")[![vvh-empora](https://avatars.githubusercontent.com/u/5236105?v=4)](https://github.com/vvh-empora "vvh-empora (1 commits)")[![dhotson](https://avatars.githubusercontent.com/u/21532?v=4)](https://github.com/dhotson "dhotson (1 commits)")

---

Tags

phpThumbnailsthumbor99designs

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/99designs-phumbor/health.svg)

```
[![Health](https://phpackages.com/badges/99designs-phumbor/health.svg)](https://phpackages.com/packages/99designs-phumbor)
```

###  Alternatives

[dereuromark/media-embed

A PHP library to deal with all those media services around, parsing their URLs and embedding their audio/video content in websites.

182530.3k11](/packages/dereuromark-media-embed)[lakshmaji/thumbnail

Thumbnails for videos

108122.2k](/packages/lakshmaji-thumbnail)[tomatophp/filament-media-manager

Manage your media files using spatie media library with easy to use GUI for FilamentPHP

14543.9k3](/packages/tomatophp-filament-media-manager)[urlbox/screenshots

Use urlbox to easily generate website thumbnail screenshots from a URL

14250.4k](/packages/urlbox-screenshots)[nikkanetiya/laravel-color-palette

Laravel Wrapper for `ksubileau/color-thief-php`. Grabs the dominant color or a representative color palette from an image. Uses PHP and GD or Imagick.

3312.6k](/packages/nikkanetiya-laravel-color-palette)[kiwilan/php-audio

PHP package to parse and update audio files metadata, with `JamesHeinrich/getID3`.

3012.6k1](/packages/kiwilan-php-audio)

PHPackages © 2026

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