Keep artwork on disk and serve it from iPX #111

Closed
opened 2026-10-02 06:50:46 -07:00 by rays · 1 comment
Owner

Artwork came straight from each publisher's server (or through /api/art, fetched every time, for http-only hosts: p95 340 ms on 2026-10-02). Nothing was kept, every page view asked every publisher (and told it who was looking), and artwork vanished when a publisher's server did. Wanted: every image a feed names comes through iPX, kept on disk once shown, the least recently shown dropped over a size the admin sets (default 500 MB, 0 = none).

Artwork came straight from each publisher's server (or through /api/art, fetched every time, for http-only hosts: p95 340 ms on 2026-10-02). Nothing was kept, every page view asked every publisher (and told it who was looking), and artwork vanished when a publisher's server did. Wanted: every image a feed names comes through iPX, kept on disk once shown, the least recently shown dropped over a size the admin sets (default 500 MB, 0 = none).
rays added the enhancement label 2026-10-02 06:50:46 -07:00
Author
Owner

Done in a005166: every image a feed or item names comes from /api/art, kept in /data/art (on Tower /mnt/user/ipx/art) once shown, least recently shown dropped over art_cache_mb (admin page, 500 MB default, 0 = none). Served with nosniff and a sandboxing CSP. Tests on SQLite, Postgres and in the browser. Deployed 2026-10-02; the cache fills as pages loaded after the deploy show artwork.

Done in a005166: every image a feed or item names comes from /api/art, kept in /data/art (on Tower /mnt/user/ipx/art) once shown, least recently shown dropped over art_cache_mb (admin page, 500 MB default, 0 = none). Served with nosniff and a sandboxing CSP. Tests on SQLite, Postgres and in the browser. Deployed 2026-10-02; the cache fills as pages loaded after the deploy show artwork.
rays closed this issue 2026-10-02 06:52:18 -07:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rays/ipx#111