Show HN: PianoFun – Browser piano learning game with MIDI (vanilla JavaScript)

3 points by victorbuilds ↗ HN
My daughter is learning piano, and I saw someone on X who vibe-coded a similar app for their kid. So I plugged a USB cable into our 10-year-old Casio AP-450, fired up Claude Code, and had a working falling-note game in minutes.

My daughter immediately became the product manager — she requested a beat toggle, caught that long notes disappeared too fast on keypress, and spotted visual overlaps I completely missed.

Deliberately vanilla JS/HTML/CSS — no frameworks, no build step. Setup is: USB cable + Chrome + open index.html.

Open source (GPL-3.0): https://github.com/victorantos/PianoFun

2 comments

[ 3.6 ms ] story [ 14.3 ms ] thread
Nice job - reminds me of the old game Synthesia which uses a similar falling note approach to teach piano. One nice thing about it is that it lets you switch between the following notes and actual grand staff sheet music.

https://synthesiagame.com

If she’s interested in learning to play by ear, I created an educational game called Lend Me Your Ears in the style of the old “Simon” toy. It presents players with a sequence of musical notes that increases over time and challenges them to reproduce it by ear using either an on-screen piano, a connected MIDI keyboard, or an acoustic instrument.

https://lend-me-your-ears.specr.net