Govips - A lightning fast image processing and resizing library for Go

I really think having our image processing handled by govips which wraps libvips could provide a lot of additional functionality and could potentially increase performance. Here are some tests to check out:

libvips benchmarks.
libvips speed & memory use
Internals — A high-level technical overview of libvips’s evaluation system

ImageMagick is often recommended for image optimization . This is a good tool, but the result of its work usually needs additional optimization, while other tools do better. We recommend libvips , although it is a lower-level tool and more demanding on the technical skills of the user. At ImageMagick also periodically found security vulnerabilities, which are desirable to know about.

Eddie Osmani, one of the managers of Google Chrome in Optimizing graphics for the web: the most important

Currently I run all my images through Govips or with the libvips CLI to get the ideal balance of quality to compression.

Any thoughts?

1 Like

It seems libvips supports webp as well :smiley:

And SVG, that would be nice to have.

Although it’s definitely a plus for libvips, and must-have for any image processor, Hugo does support webp (in case you hadn’t known). However, govips (libvips) provides a plethora of other great features as well.


My 50 cents about the inclusion of C/C++ libraries in Hugo is that can only happen if

  1. This is a functionality that Hugo really, really needs, and
  2. It’s not available as a native Go library and it it’s not likely to happen in the near future.
  3. It is available from a trusted source with a license that’s compatible with Apache 2.

E.g. LibSASS back in the days, or the Webp encoder from Google.

Govips does not fall into that category, I think.

Understandable. As for #1 I do think at some point image optimization will need to be revisited.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.