PHPackages                             netlogix/nximageoptimizer - 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. netlogix/nximageoptimizer

ActiveTypo3-cms-extension[Image &amp; Media](/categories/media)

netlogix/nximageoptimizer
=========================

Optimize images when they are processed by the resource publisher

5.0.0(2y ago)017.5k[3 PRs](https://github.com/netlogix/nximageoptimizer/pulls)MITPHPPHP ^8.1

Since Aug 19Pushed 1y ago3 watchersCompare

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

READMEChangelog (10)Dependencies (5)Versions (22)Used By (0)

TYPO3 Extension `nximageoptimizer`
==================================

[](#typo3-extension-nximageoptimizer)

[![TYPO3 V12](https://camo.githubusercontent.com/08afacc49187e63c796f7d1c4401d0f0563bab574d9c525312b2827acb09a7c5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5459504f332d31322d6f72616e67652e737667)](https://get.typo3.org/version/11)[![Minimum PHP Version](https://camo.githubusercontent.com/183804d09fec16ca7b6209b007250b7d8db1b915042feb093a9f20e6e1f25359/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230382e312d3838393242462e737667)](https://php.net/)[![GitHub CI status](https://github.com/netlogix/nximageoptimizer/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/netlogix/nximageoptimizer/actions)

This TYPO3 extension optimizes images (jpg, png, gif, svg) for web presentation when they are published. It will generate WebP versions of each rendered image and serve them to the client.

Compatibility
-------------

[](#compatibility)

The current version (dev-master) of this extension has been tested in TYPO3 12 on PHP 8.1, 8.2 and 8.3.

Requirements
------------

[](#requirements)

This extension requires additional third-party tools.

- [jpegoptim](https://github.com/tjko/jpegoptim): utility to optimize/compress JPEG files
- [optipng](http://optipng.sourceforge.net/): OptiPNG is a PNG optimizer that recompresses image files to a smaller size, without losing any information
- [pngquant](https://pngquant.org/): pngquant is a command-line utility and a library for lossy compression of PNG images
- [svgo](https://github.com/svg/svgo): Node.js tool for optimizing SVG files
- [gifsicle](https://github.com/kohler/gifsicle): Create, manipulate, and optimize GIF images and animations

You should install them using your package manager of choice.

### Ubuntu Example

[](#ubuntu-example)

The following is an example installation on Ubuntu:

```
sudo apt-get install jpegoptim optipng pngquant gifsicle
sudo npm install -g svgo
```

### macOS Example (using [Homebrew](https://brew.sh/))

[](#macos-example-using-homebrew)

```
brew install jpegoptim
brew install optipng
brew install pngquant
brew install svgo
brew install gifsicle
```

### macOS Example (using [MacPorts](https://www.macports.org/))

[](#macos-example-using-macports)

```
port install jpegoptim
port install optipng
port install pngquant
port install svgo
port install gifsicle
```

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

[](#installation)

Install the package via composer.

```
composer require netlogix/nximageoptimizer
```

Place the following in your .htaccess file and images will be replaced with WebP version.

```
	# Check if browser support WebP images
	# Check if WebP replacement image exists
	# Serve WebP image instead
	RewriteCond %{HTTP_ACCEPT} image/webp
	RewriteCond %{DOCUMENT_ROOT}/$0.webp -f
	RewriteRule (.+)\.(jpe?g|png)$ $0.webp [T=image/webp,E=accept:1]
```

Tell every caching proxy to cache based on "accept" header

```
	RewriteRule (.+)\.(jpe?g|png|webp)$ - [env=POTENTIAL_WEBP_IMAGE:1]
	Header merge vary accept env=POTENTIAL_WEBP_IMAGE
```

Troubleshooting
---------------

[](#troubleshooting)

The Ubuntu source package for imagemagick does not declare a build dependency on libwebp-dev. Thus imagemagick gets built without webp support. To fix this install the webp package.

```
sudo apt-get install webp
```

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance29

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity81

Battle-tested with a long release history

 Bus Factor2

2 contributors hold 50%+ of commits

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

Recently: every ~184 days

Total

18

Last Release

896d ago

Major Versions

1.0.0 → 2.0.02017-12-30

2.2.0 → 3.0.02020-09-01

3.1.2 → 4.0.02021-11-01

4.0.5 → 5.0.02023-12-05

PHP version history (2 changes)4.0.0PHP ^7.4 || ^8.0

5.0.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/667b5107f4c2ea180baa00166c2ee3f2a1b412ce22768d6e81bb09323d1c7fe0?d=identicon)[netlogix](/maintainers/netlogix)

![](https://www.gravatar.com/avatar/124704a0d41c6364ac5773df0c9bedc3a85f902f0826df5f12ff2a4b2a06d520?d=identicon)[paxuclus](/maintainers/paxuclus)

![](https://www.gravatar.com/avatar/2492899d51c61e47bd5a782df61c04dcb10628cf90a187efb3a02c3e9bd5ba8e?d=identicon)[tweis](/maintainers/tweis)

---

Top Contributors

[![saschanowak](https://avatars.githubusercontent.com/u/1643495?v=4)](https://github.com/saschanowak "saschanowak (30 commits)")[![tweis](https://avatars.githubusercontent.com/u/63323?v=4)](https://github.com/tweis "tweis (19 commits)")[![phroust](https://avatars.githubusercontent.com/u/4057645?v=4)](https://github.com/phroust "phroust (16 commits)")[![stephanschuler](https://avatars.githubusercontent.com/u/1595908?v=4)](https://github.com/stephanschuler "stephanschuler (7 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (3 commits)")[![sievert](https://avatars.githubusercontent.com/u/676572?v=4)](https://github.com/sievert "sievert (1 commits)")

---

Tags

image-compressionphptypo3

### Embed Badge

![Health badge](/badges/netlogix-nximageoptimizer/health.svg)

```
[![Health](https://phpackages.com/badges/netlogix-nximageoptimizer/health.svg)](https://phpackages.com/packages/netlogix-nximageoptimizer)
```

###  Alternatives

[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

63991.3k4](/packages/netresearch-rte-ckeditor-image)[christophlehmann/imageoptimizer

Optimize uploaded/processed images with binaries of your choice

46501.8k](/packages/christophlehmann-imageoptimizer)[plan2net/webp

Creates WebP copies for images (TYPO3 CMS)

661.4M3](/packages/plan2net-webp)[sitegeist/sms-responsive-images

Provides ViewHelpers and configuration to render valid responsive images based on TYPO3's image cropping tool.

34493.1k2](/packages/sitegeist-sms-responsive-images)[lochmueller/focuspoint

Focuspoint integrate the focal point method to crop images in the frontend of the web page. Use the jQuery-focuspoint plugin (https://github.com/jonom/jquery-focuspoint example http://jonom.github.io/jquery-focuspoint/demos/helper/index.html) to crop the images. Use the function as wizard in the file list view and directly in the content element.

23179.1k](/packages/lochmueller-focuspoint)[smichaelsen/melon-images

Responsive Image Management

2489.3k](/packages/smichaelsen-melon-images)

PHPackages © 2026

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