Color-managed thumbnails for Kirby 3

Overview

ImageKit for Kirby 3

This is not directly related for ImageKit for Kirby 2, but based on the same idea of improving Kirby’s built-in image processing capabilities.

Adds support for color-managed thumbnails to Kirby 3. It does so by converting all thumbnails to sRGB color space and embeds an ICC v2 profile for best compatibility across devices and screens. It also provides basic (optional) image size optimization. In the future, it might also support more fine-grained control over the output profile and rendering intend.

⚠️ This is an experimental plugin and probably far from being complete. As Kirby’s built-in image processing will probably get an overhaul in the foreseeable future, this might also be just an intermediate solution.


Installation

Download

Download and copy this repository to /site/plugins/imagekit.

Git submodule

git submodule add https://github.com/fabianmichael/kirby3-imagekit.git site/plugins/imagekit

Composer

Composer setup is not yet available during early development.

Setup

⚠️ As the GD library does not support color management, you need to use the im driver in order to make this plugin work.

Your server needs to have a recent version of ImageMagick available on the command line that was compiled with LittleCMS for color management support. You can check this by logging into to server via SSH and type convert --version (assuming, that ImageMagick is in your PATH). This should give you a result like this:

Version: ImageMagick 7.0.11-14 Q16 x86_64 2021-05-31 https://imagemagick.org
Copyright: (C) 1999-2021 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP(5.0)
Delegates (built-in): bzlib fontconfig freetype gslib heic jng jp2 jpeg lcms lqr ltdl lzma openexr png ps tiff webp xml zlib

If you can spot lcms in the Delegates line, you’re good to go! :-)

If you also want to optimize your images for filesize, please also install the corresponding command line tools. This will probably not be possible in most shared hosting environments. ImageKit currently relies on a custom configuration of the spatie/image-optimizer package for that purpose, please refer to their installing instructions at https://github.com/spatie/image-optimizer#optimization-tools.

Delete the conents of your media folder to clear existing thumbnails.

Options

Option Type Required Default Description
optimize bool false  false Will optimize your images by using a bunch of command-line tools, which need to be installed separately. 

License

MIT

Credits

Written by Fabian Michael and inspired by input from Florian Karsten and the Kirby community.

You might also like...
This plugin allows you to create many-to-many relationships between pages in Kirby and synchronizes them on both sides.
This plugin allows you to create many-to-many relationships between pages in Kirby and synchronizes them on both sides.

Kirby 3 Many To Many Field This plugin allows you to create many-to-many relationships between pages in Kirby.

Helper to automatically load various Kirby extensions in a plugin

Autoloader for Kirby Helper to automatically load various Kirby extensions in a plugin Commerical Usage This package is free but if you use it in a co

Add information about PGP public keys on upload in Kirby v3
Add information about PGP public keys on upload in Kirby v3

Kirby3 GnuPG This plugin adds information about PGP public keys on upload, using gpg binary (which needs to be installed for this to work). Getting st

A Frankenstein's monster: Kirby inside of Laravel.

A Kirby-Laravel Starter Kit This is an experimental starter kit for using Kirby within Laravel (a little like Statamic). In my limited experience it r

Kirby wrapper for automated content accessibility checkers Editoria11y and Sa11y

Kirby3 A11yprompter For a comprehensive overview of Sa11y and Editoria11y, how they can assist maintaining an accessible website by supporting content

Plugin for Kirby that allows you to load assets generated by Vite.

Kirby Vite Plugin Plugin for Kirby that allows you to load assets generated by Vite. In development mode, assets are loaded from Vite's development se

🦭 Kirby, but headless only – KQL with bearer token, Express-esque middlewares & more

Kirby Headless Starter ℹ️ Send a Bearer test authorization header with a request to the live playground to test this headless starter. This starter ki

Kirby plugin to visually show hidden characters in all kind of input fields and their previews.
Kirby plugin to visually show hidden characters in all kind of input fields and their previews.

Kirby Hidden Characters Kirby plugin to visually show hidden characters in all kind of input fields and their previews. This includes white spaces and

Kirby 3 Plugin for running jobs like cleaning the cache from within the Panel, PHP code, CLI or a cronjob

Kirby 3 Janitor Kirby 3 Plugin for running jobs. It is a Panel Button! It has jobs build-in for cleaning the cache, sessions, create zip-backup, pre-g

Comments
  • example on how to configure

    example on how to configure

    how can one create a custom chain? how to forward options? https://github.com/spatie/image-optimizer#creating-your-own-optimization-chains

    maybe create a callback to get the optimzer chain? so it can be configured using kirbys options?

    opened by bnomei 2
Owner
Fabian Michael
Graphic Designer, Web Designer & Developer.
Fabian Michael
Perch Dashboard app for exporting content to (Kirby) text files and Kirby Blueprint files

toKirby Perch Dashboard app for exporting content to (Kirby) text files and Kirby Blueprint files. You can easily install and test it in a few steps.

R. Banus 4 Jan 15, 2022
This Kirby V3 Plugin brings snippets and blueprints together in one place. It includes useful tools that completely changing the way you work with Kirby: Fast and well organized.

Kirby Components Overview Do you love to make awesome projects with Kirby CMS? Do you also find it difficult to switch between snippets and blueprints

Roman Gsponer 6 May 31, 2023
Smd thumbnail - Multiple image thumbnails of arbitrary dimensions

smd_thumbnail Download | Packagist If you’re bored of one Textpattern thumbnail per image and don’t fancy using an auto-resizing script or relying on

Stef Dawson 9 Dec 9, 2021
A fully-managed real-time messaging service that allows you to send and receive messages between independent applications.

A fully-managed real-time messaging service that allows you to send and receive messages between independent applications.

Google APIs 58 Dec 23, 2022
Preferences are configuration variables that are user-managed for which we cannot rely upon container parameters or environment variables.

Preferences Preferences are configuration variables that are meant to be user managed for which we cannot rely upon container parameters or environmen

Makina Corpus 1 Feb 7, 2022
Addon for Cockpit CMS - store thumbnails and meta data for video links

VideoLinkField Addon for Cockpit CMS Copy a url from YouTube or Vimeo, click the Button "Find Values", wait a second and in the background starts a se

Raffael 3 Oct 2, 2022
Made a custom Elementor widget because i wasn't able to find any free version of a slider with thumbnails.

Support my work ❤️ Buy me a coffee ☕ How to install Download -> place in plugin folder -> Activate under WordPress dashboard. How to use Open Elemento

Christian Hansen 6 Dec 25, 2022
Images and thumbnails.

Deutsch English Svenska Image 0.8.16 Images and thumbnails. How to add an image Create an [image] shortcut. The following arguments are available, all

Anna 2 Nov 4, 2022
Get the color from the words

wordcolor Installation The preferred way to install this extension is through composer. Either run php composer.phar require --prefer-dist light/wordc

__FresHmaN 1 Mar 24, 2016
Kirby Janitor job for staging

Simple staging Janitor jobs Plugin for very simple staging setup for https://github.com/bnomei/kirby3-janitor/ (required). Beta quality - use at your

Florian Karsten 8 Nov 27, 2022