Portfolio images render low-res — likely Immich serving thumbnails instead of originals #25

Closed
opened 2026-07-19 22:19:13 -06:00 by jhodgkin · 1 comment
Owner

Images meant to showcase Elysse's work are displaying at low resolution on the site. Suspected cause: the Immich integration (config/site.jsonimmich.baseUrl / publicAlbumPrefix, portfolio category immichAlbumIds) is serving a thumbnail/preview asset rather than the full-resolution original — Immich's shared-album and asset endpoints have separate thumbnail vs. original routes, and it's easy to wire up the wrong one.

To investigate:

  • Check which Immich endpoint the portfolio grid and lightbox actually request (thumbnail vs. /original) for both grid thumbnails and the expanded/lightbox view
  • Confirm whether Immich's own asset/thumbnail generation settings are capping resolution (e.g. thumbnail quality/size settings in Immich server config)
  • Verify behavior differs between grid cards (fine to be lower-res for perf) vs. the lightbox/detail view (should be full quality)
  • Related to the open item in docs/BACKLOG-2026-07-16.md: "verify Immich proxy flow end-to-end on prod (couldn't test without albums)" — this may be the same root cause now that real albums/photos exist.

Fix: ensure the lightbox/full-view image path requests full-resolution originals from Immich, reserving thumbnails for grid/card previews only.

Images meant to showcase Elysse's work are displaying at low resolution on the site. Suspected cause: the Immich integration (`config/site.json` → `immich.baseUrl` / `publicAlbumPrefix`, portfolio category `immichAlbumId`s) is serving a thumbnail/preview asset rather than the full-resolution original — Immich's shared-album and asset endpoints have separate thumbnail vs. original routes, and it's easy to wire up the wrong one. **To investigate:** - Check which Immich endpoint the portfolio grid and lightbox actually request (thumbnail vs. `/original`) for both grid thumbnails and the expanded/lightbox view - Confirm whether Immich's own asset/thumbnail generation settings are capping resolution (e.g. thumbnail quality/size settings in Immich server config) - Verify behavior differs between grid cards (fine to be lower-res for perf) vs. the lightbox/detail view (should be full quality) - Related to the open item in `docs/BACKLOG-2026-07-16.md`: "verify Immich proxy flow end-to-end on prod (couldn't test without albums)" — this may be the same root cause now that real albums/photos exist. **Fix:** ensure the lightbox/full-view image path requests full-resolution originals from Immich, reserving thumbnails for grid/card previews only.
Author
Owner

Fixed and deployed to dev. Root cause: the portfolio grid requested Immich's default /thumbnail endpoint with no size param, which serves a 250x374 WebP (~10KB) — visibly blurry. Added size=preview, which returns a 1440x2157 JPEG (~330KB).

Verified live on dev-lisilou.jerodrigged.com: deployed page's JS now builds URLs with size=preview, and fetching an actual asset through that exact URL pattern confirms the 1440x2157 JPEG is served.

Commit: 53677c9 (pushed to main, deployed via Gitea Actions run #146).

Fixed and deployed to dev. Root cause: the portfolio grid requested Immich's default `/thumbnail` endpoint with no `size` param, which serves a 250x374 WebP (~10KB) — visibly blurry. Added `size=preview`, which returns a 1440x2157 JPEG (~330KB). Verified live on dev-lisilou.jerodrigged.com: deployed page's JS now builds URLs with `size=preview`, and fetching an actual asset through that exact URL pattern confirms the 1440x2157 JPEG is served. Commit: 53677c9 (pushed to main, deployed via Gitea Actions run #146).
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jhodgkin/lisilou-portfolio#25