Skip to content
Digital Graffiti Wall

Digital Graffiti Wall

A shared 32x32 canvas that everyone in the room paints at once, shown on a real LED grid.

2020

Artist statement

At a tech talk, the audience mostly sits there and types questions into a chat. I wanted everyone in the room to make something together instead, so I built a wall they could all paint on at once.

You open a link on your phone, pick a color and draw on a small grid, and every pixel shows up on everyone else's screen and on a real LED grid. There are no accounts, and if two people paint the same pixel, the last one wins. The best part was watching a room organize itself: someone starts drawing a shape and others join in, or groups fight over the corners. A 32x32 grid forces creativity in a way a blank whiteboard never would.

How it's made

JavaScript · MongoDB Realm · RGB LEDs · Real-Time Sync

The canvas is a 32x32 grid of plain HTML divs in eight colors, and each pixel is one document in MongoDB with a color and an x, y coordinate. You sign in anonymously through MongoDB Realm, your pixel changes color right away and the write goes out behind it, and every screen and the LED grid read the whole grid again every 5 seconds. The post has the code.

BROWSER canvas UI: 32×32 div grid, pointer events, optimistic updates MONGODB ATLAS 1,024 pixel documents, { color, coord: { x, y } } LED CONTROLLER a microcontroller reads pixel state and drives the WS2812B matrix MongoDB Realm SDK, anonymous auth reads pixel state
BROWSER canvas UI: 32×32 div grid, pointer events, optimistic updates MONGODB ATLAS 1,024 pixel documents, { color, coord: { x, y } } LED CONTROLLER a microcontroller reads pixel state and drives the WS2812B matrix MongoDB Realm SDK, anonymous auth reads pixel state

Lineage

If you liked this project, consider sharing it on Hacker News, Bluesky, LinkedIn, or X.

← All works