A small feature release and polish. The shiny new things are:
- CSS grid themes: Several new themes are available based on native CSS grid, which removes Bootstrap as a dependency. This makes them both simpler and more lightweight. They are also more refined and precise in terms of spacing and layout. The new themes are Tide (teal), Sand and Sea (blue), Kelp (olive-amber), Canyon (rust stained) and Pond (green). The themes feature a 'night mode' toggle and use image source sets to ensure that thumbnails are crisp when displayed at different resolutions or on high resolution screens.
- Block template overrides: Copy the internal block templates from modules into the relevant theme/blocks directory and customise them however you like, (eg. copy yourmodule/Block/some-template.html to themes/yourtheme/blocks/some-template.html). The versions internal to the modules provide safe defaults if theme-specific versions are not available.
- Pagination control has been extracted from the PHP code and placed in a html template.
Bootstrap has served me well over the years, but it has grown increasingly complex and heavy. While still offering great convenience it is just not necessary anymore, and I will be working with CSS grid from here on. I'll maintain support for the existing Bootstrap themes (except for the legacy 'default', which will be removed), but I won't be developing any more of those.
A further advantage of the CSS grid themes is no license. They aren't based on any dependency so you can mod and distribute them without any concern at all. They also make a nice basis for additional theme generation via AI - give Claude a base theme with some new colour scheme ideas and you can quickly come up with a different look and feel (Tide was the initial development, the other themes are just AI clones with different fonts and palettes).
Note that the use of image source sets means that multiple thumbnails are generated for every image. This places substantially greater strain on the CPU during first page load when the thumbnails are built, so I recommend using the libvips variant of the ResizeImage trait if you can, as it is much faster and more memory efficient than the GD and ImageMagick variants.
Download it here:
Copyright, all rights reserved.