So I decided to create a dithering library that rebuilds the pixel pattern from the original source whenever the layout changes. Pick a palette and an algorithm, and it renders for the size on screen. It also works in Node.js and the CLI.
Or just go to our playground to create some rad dithered images.