lab / experiment

Telegraph

One telegraph wire shared by everyone on the page. Hold the key to send Morse; whoever keys first holds the line, and everyone hears the tone and watches it decode.

published
2026-10-30
status
wip
stack
TypeScript · React · Web Audio · Cloudflare Durable Objects · WebSockets
livewip
notes

One key

The whole piece has one control: a key. Hold it with the mouse, a finger, or Space when it has focus. Down is a tone and a block on the trace; up is silence. Press it and you hold the line, and other visitors' keys do nothing until you have been quiet for two seconds.

Decoding a hand

People key at their own speed, so the decoder doesn't assume one. It takes the shorter key-downs of the message as dots and the middle one as its unit. A press under two units is a dot and a longer one a dash. A gap of two units ends a letter, and five end a word. That's a little shorter than the textbook three and seven, because hands rush.

The sender's page stamps each key-down and key-up with its own clock, and the room passes those stamps on unchanged. So everyone decodes the message as it was keyed, not as the network delivered it.

The wire

The wire is a Cloudflare Durable Object, like the rooms behind Majority Shell and The One Red. It doesn't keep any messages: it passes key-down and key-up on to everyone else and remembers who holds the line. A key held down for three seconds lets go on its own.