YOGA Image Optimizer v1.2.0 Released With an Improved Interface and More!

YOGA Image Optimizer v1.2.0 is out! This version brings an improved interface and more generally a better user experience.

Improved Interface

The YOGA Image Optimizer interface has been reworked to be more compact and less bloated. Let's see the changes.

Header Bar

First, the header bar. There is not too much to see here, the [+] and [–] buttons have been linked together and the vertical bar between them and the "Remove all" button has disappeared.

YOGA IMAGE Optimizer v1.1 vs v1.2: header bar

Image List

The image list part has more changes. The first one is that some columns have been merged. So the "Input Image" and the "Output Image" columns are now one, and the same goes for the "Status" and "Output Size" column as the status is no more needed once the optimization done. To merge multiple informations in one column, we now use multi-line texts along with font styles (font size and font weight) to keep this readable.

YOGA IMAGE Optimizer v1.1 vs v1.2: image list

The refactoring of the image list was also the occasion to bring some improvements. You can now double-click on a row to open the associated input image, and when the output image is larger than the input one, a warning icon is added to signal it:

Warning icon when output larger than input

Output Options and Transformations

Finally, the output options section at the bottom of the window has been reorganized. The "basic" output options (image format and output file) has been separated from the "transformation" options. This makes the interface less bloated and will allow adding more transformation options in the future without having a too loaded interface.

YOGA IMAGE Optimizer v1.1 vs v1.2: output options and transformations

Images Preview

A lot of work has been done on image preview in this version.

Before, when you drag-and-dropped a bunch of photo on YOGA Image Optimizer, it froze until all thumbnails were generated. Now, thumbnail generation is asynchronous so the application interface is no more frozen during image importation.

The thumbnail generation has also been sped up for Linux users. When you browse your folders with your favorite file browser (Nautilus, Dolphin, Thunar,...) or when you open an image in some software like GIMP, a thumbnail is generated and placed in a shared cache (generally located in ~/.cache/thumbnails/). YOGA Image Optimizer is now aware of this mechanism and will use the already generated thumbnails from it every time it is possible. This avoids a lot of useless computation and makes the preview loading almost instantaneous!

Asynchronous thumbnail loading. The thumbnail generation was slowed down for the video.

Better Error Handling

In previous versions of YOGA Image Optimizer, a broken image (invalid rotation metadata, truncated or corrupted file,...) could crash the image import and optimization processes. This is now fixed. If a thumbnail cannot be generated, it is replaced by a "broken image" icon instead.

And if an error occurs during the image optimization (because of a broken image, a permission issue for the output file, a lack of memory,...), this does not crash the whole process anymore. The error is simply reported in the "Output Size" column.

Thumbnail error and optimization error


NOTE: there is currently no way to get the precise error from the graphical interface but errors are logged in the console.


Interface / User Experience:

  • More compact and less bloated interface (#17)
  • Allow opening input images in the default image viewer by double-clicking on them
  • Asynchronous generation and loading of thumbnails to not freeze the interface when importing a lot of images (#26)
  • Sped up thumbnail loading on Linux by using already generated thumbnails from the shared cache
  • Sped up thumbnail generation using BOX sampling instead of LANCZOS
  • Displayed a warning icon if the output image is larger than the input one

Bugfix / Code Improvement:

  • Fixed a crash when generating thumbnails for JPEGs with an invalid orientation EXIF tag (#29)
  • Fixed inverted width and height with rotated JPEGs
  • Fixed a crash of the image import process when generating the thumbnail of a broken image (#27)
  • Fixed a crash of the optimization batch if an error occurs when optimizing an image (#27)
  • Fixed issues related to concurrent.futures on Python 3.7 and 3.8 (#32)
  • Updated the code to not use deprecated constants on newer Pillow versions
  • Various typo fixed (@kianmeng, #31)


  • Dutch translation (incomplete) (@Vistaus, #25)
  • German Translation (Jürgen Benvenuti)


YOGA Image Optimizer v1.2.0 main view with output options

YOGA Image Optimizer v1.2.0 main view with output options

YOGA Image Optimizer v1.2.0 main view with transformation options

YOGA Image Optimizer v1.2.0 main view with transformation options

YOGA Image Optimizer v1.2.0 optimization in progress

YOGA Image Optimizer v1.2.0 optimization in progress

YOGA Image Optimizer v1.2.0 settings

YOGA Image Optimizer v1.2.0 settings

Download YOGA Image Optimizer