This release pages the media library, remembers your page size on the article, activity and media lists, and previews image variants on a real sample photo. The media list API changes shape, so read the upgrading notes if you call it. ## New **Media library** - The media library is now paged, with a page size of 5, 25, 50 or 100. The image picker in the editor uses the same pages. **Image variants** - Creating a variant shows a preview rendered from a real sample image, so the size estimate and the before and after comparison match what visitors will get. ## Improvements and fixes - The article, activity and media lists keep their page and page size in the address, so a reload or a shared link opens the same view. - The Integration page is now fully translated into French. ## API - Changed: `GET /v1/media/` answers `{ items, total, page, size, counts }` instead of `{ items, next_cursor, counts }`. It accepts `page` (default `1`) and `size` (`5`, `25`, `50` or `100`, default `25`). An invalid value answers `400`. - Changed: `GET /v1/media/` no longer accepts `cursor` or `limit`. ## Under the hood - Replace the cursor and limit of the media list query with a page and a size in the image domain and the list use case. - Add specifications, design checks and Go and Vitest suites for the paged media screens. ## Upgrading - Replace the binary, or pull the new image. There is no schema change and no new environment variable. - Any script or site that reads `GET /v1/media/` must now read `total` and loop over `page` instead of following `next_cursor`.