Pimp My IDE / Garage dispatch
Back to garage
September 28, 2026 | browser audio / focus / control

If the focus sound starts itself, the interface already failed.

Ambient audio can help a work session feel contained. It can also seize the room, hide its source, and keep running after the user wants silence.

The take. Start sound only after a clear action. Put stop, level, texture, and duration on the same panel. Treat silence as the default state, not an error.

The useful part is control, not wallpaper.

Lofi Cities puts animated city scenes beside browser-generated music. Its player waits for a press on Play. Music and city sounds have separate level controls. The page also has focus and sleep timers.[1]

Those controls do more than decorate the player. A listener can separate the sound bed from the scene, change the balance, and choose when the session ends.

Ambient sound should frame the work. It should never hold the controls hostage.

A user gesture is the right ignition key.

MDN says browsers may suspend a Web Audio context until a user interacts with the page. It recommends creating or resuming the context inside a user event.[2]

That browser rule matches the design rule. A visible Start button establishes intent. The same button must expose Stop without making the user search for another control.

Mixing needs names people can act on.

Web Audio connects sources, processing nodes, and a destination in an audio graph. A gain node changes level. Filters change the frequency content.[3]

The interface does not need to expose every node. It does need labels that describe the audible result. "Level" tells the listener how loud the bed will be. "Texture" explains that the slider changes brightness or weight, depending on the selected source.

A timer is a stop condition.

A focus timer should not imply that sound improves productivity. It gives the session a boundary. The audio stops when the timer reaches zero. The listener can stop it sooner with one action.

The patch bay below generates noise and a low fan tone in the browser. It does not load a track, save a preference, use the microphone, or send audio data anywhere.

Interactive makeover / sensory control

Focus audio patch bay

Traditional purpose replaced: a hidden autoplaying ambience track with one mute icon. Better version: choose the source, set its level and texture, add a visible stop time, then start it with one deliberate action.

Patch one sound bed

The native controls own every audible state. Nothing plays until you press Start sound.

Sound bed
Session clockOFF
RAIN / READY

Silent. Rain is patched and ready.

Copyable control policy

Keep the sound contract visible

The card records the selected controls. It does not claim that the sound improves focus.

What this control proves. The demo starts after a button press, routes a generated source through level and filter controls, and stops on command or at a deadline. It does not measure concentration.

Sources and limits

Open the source log
  1. Lofi Cities, used September 28, 2026. The live page identifies its music as generated in the browser and exposes Play, separate music and city-sound levels, focus and sleep timers, scene controls, and a city-sound mixer.
  2. MDN, "Web Audio API best practices", read September 28, 2026. It documents autoplay policy, user-gesture startup, play and stop controls, volume controls, and accessible labels.
  3. MDN, "Using the Web Audio API", read September 28, 2026. It explains audio graphs, audio contexts, gain nodes, filters, playback controls, and browser autoplay constraints.
  4. Hacker News discussion for Lofi Cities, item ID verified through the Hacker News API on September 28, 2026. The thread is a discovery and critique route, not evidence for the technical claims above.

Source boundary. Lofi Cities describes its own implementation and controls. The patch bay is an independent Web Audio demo. It uses a generated loop, an oscillator, filters, and gain nodes. No source above establishes that ambient audio improves focus.