Change
Feed a note into the changer and scoop the coins from the tray.
A calm, first-person 3D coin laundromat with synthesized ASMR: no score, no timer pressure, just the sounds and small gestures of doing laundry.
Feed a note into the changer, load the washer shirt by shirt, pour detergent, drop coins in the slot and watch the water, foam, drain and spin.
Every sound is synthesized live with Web Audio and placed in the room: about 30 effects plus machine loops, rain and room tone.
Feed a note into the changer and scoop the coins from the tray.
Open the door, drag shirts from the basket into the drum, hold the bottle over the drawer to pour detergent, drag coins into the slot and press start.
Drag a coin into the dryer, tumble, then pull the lint screen and peel the felt off.
Peg wet shirts on the line by the window; the drips slow as they dry.
Smooth the wrinkles by dragging, fold sleeve, sleeve, bottom up, and stack.
Stay a while and listen to other customers' machines and the rain.
Drag a shirt into the drum and let go, or hold the bottle to pour; a half pour stays half full. Taps still work for every step.
About 30 effects plus machine loops, rain and room tone, synthesized with Web Audio. On iPhone it plays even with the silent switch on.
Night with rain or morning light, in English or Bahasa Indonesia, with cycles from 45 seconds to 3 minutes.
Installable web app with a service worker, plus a signed Android APK and a native iOS app built from the same files.
Open juw12.github.io/bilas and tap Step inside.
Change a note for coins, load the washer shirt by shirt and press start.
Tumble dry, peg the shirts by the window, then smooth and fold them into a stack.
Straight from the README, so you know what you're getting before you try it.
88 files in the repo · last updated 8 Nov 2026.
Browse the codeWeb, PWA, Android, iOS. You can try it in the browser with nothing to install.
Step inside: Open juw12.github.io/bilas and tap Step inside. Headphones help.
No accounts, no analytics and no network calls: everything, including the sound, is generated in your browser.
Needs WebGL; shows a friendly message if it is unavailable. Not on the App Store or Google Play; the iOS app is an unsigned sideload build.
Not yet: it's marked “live” and still changing. The README always has the current state.
The source is public on GitHub under the MIT licence.
Juwen Lie, an R&D mechanical engineer in Batam, Indonesia, as an independent personal project.
A quiet coin laundry.