This is the homepage renderer (core/led-sign.js) in a sandbox,
shown full-bleed like the homepage banner. Each character is drawn to a
hidden <canvas>, its pixels read with
getImageData and thresholded to 1-bit, then every fixed
dot lights up when a pixel behind it is on; the bottom row scrolls one
column further left each step. Every control applies instantly:
text and speed go through the sign's setters, while
font, size, dot size, columns and
letter spacing re-rasterise the whole sign on the next frame. More
columns = finer, smaller dots; dot size sets each disc's diameter as
a fraction of its cell. The dot-band is a fixed 16 rows tall, so font sizes
past ~16 start clipping tall glyphs.