Pausable looping video in an Astro blog — WCAG 2.2.2 rules out GIF, iOS rules out VP9
A GIF cannot be paused, so WCAG 2.2.2 ruled it out. MP4 then beat the smaller VP9 on iOS hardware decode. The encode recipe, the guards, and the tests.
A GIF cannot be paused, so WCAG 2.2.2 ruled it out. MP4 then beat the smaller VP9 on iOS hardware decode. The encode recipe, the guards, and the tests.
An Astro service worker served every navigation from cache first, so new articles appeared one visit late. Listings now go to the network first.
How measurements decided a service worker for an Astro blog: 287KB precached instead of 11.7MB of HTML, 50 pages capped, and no expiry date.
Pagefind navigated away while an IME conversion was open. isComposing is necessary but not sufficient: WebKit fires compositionend before the keydown.
Why width:100% blurred a 256px screenshot in Astro, and how a native dialog made every diagram readable on a phone. Seven measurements corrected the design.
Implementing RFC 10008 HTTP QUERY in Python with Starlette: safe, idempotent, cacheable requests with a structured body, and how it complements GraphQL.