For e-ink:

Server-side processing:

convert input.png -colorspace Gray -contrast-stretch 5% output.png

Testing

To test without a Kindle:

# Resize browser to ~600x800 to simulate Kindle viewport
# Chrome DevTools → Toggle Device Toolbar → 600x800
# Disable all animations in DevTools

To test on the actual Kindle: 1. Start local server: python3 -m http.server 8080 --directory ./kindle-out/ 2. Kindle Experimental Browser → http://<mac-ip>:8080/