From 6945a0ae9afb18313636c09f34959ee5b225f78d Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Mon, 22 Jun 2026 09:52:57 +0300 Subject: Add dynamic subdivided thumbnail tiles Make the album preview grid livelier: with a configurable probability (THUMB_SUBDIVIDE_PERCENT, default 30%) a square thumbnail tile is subdivided into several smaller thumbnails packed into the same square footprint, chosen at random from: - quad: 2x2 squares (4 photos) - two-wide: two stacked full-width strips (2 photos) - squares+wide: two squares plus one full-width strip, strip on the top or the bottom (3 photos) Each sub-thumbnail stays its own clickable photo with its own view page; subdivision only groups consecutive photos visually, so preview numbering and the view/details/redirect pages are unchanged. No new images are generated (CSS object-fit crops the existing aspect-correct thumbs into squares or wide strips). Sub-thumbnails get the same random entry animation and the same dramatic hover (flip/scale/rotate/filter) as full thumbs. The layout choice reuses the seeded random_index, so builds stay reproducible under RANDOM_SEED. THUMB_SUBDIVIDE_PERCENT=0 reproduces the previous output byte-for-byte. The new option is wired through the config defaults, validation (0..100), --print-config, the --subdivide CLI flag, the usage text, and the shuriken.json / --dry-run metadata, with docs and tests updated. Generated HTML and CSS pass the W3C Nu HTML checker and CSS validator. Co-Authored-By: Claude Opus 4.8 --- docs/generation.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docs/generation.md') diff --git a/docs/generation.md b/docs/generation.md index c377adf..b89cafc 100644 --- a/docs/generation.md +++ b/docs/generation.md @@ -96,9 +96,9 @@ metadata records: * the source `INCOMING_DIR` and source image count; * generated photo, thumbnail, and HTML file counts; * tarball status (included + file); -* effective settings (title, height, thumbheight, maxpreviews, image jobs, - random seed, shuffle, splash page, stats page, original basepath) useful for - debugging a published album. +* effective settings (title, height, thumbheight, maxpreviews, subdivide + percent, image jobs, random seed, shuffle, splash page, stats page, original + basepath) useful for debugging a published album. ## Favicon -- cgit v1.2.3