Piano
Virtual Piano
Play now. Open deeper controls only when you need them.
A short two-hand study: melody in the right hand with a simple tonic–dominant bass line.
Follow mode is for learning the notes. Timing mode is for keeping the pulse: notes fall toward the strike line, the song keeps moving, and missed notes count against the result. Use Follow first, then Timing at 50–70% before moving faster.
Practice with piano
Keep the setup when you start practicing.
Choose a sound, scale, chord, rhythm and tempo, then add that exact setup to a routine. The session opens with the same piano configuration.
Scale practice
Highlight a scale, choose direction, add a tempo and carry the setup into a timed routine.
Open →Chord practice
See chord tones, change inversions and hear block or arpeggiated playback before you practice.
Open →Guided song practice
Practice a public-domain melody with right hand, left hand or both hands, then slow it down and build speed.
Open →Built for playing
Fast first. Deeper when you need it.
Learn on the same keys
Theory should change what the instrument does.
FAQ
A few practical details.
Why does this piano start quickly?
The default sounds are generated in the browser. The first note does not wait for a multi-megabyte piano sample pack to download.
Is 88-key mode a real piano range?
Yes. It covers MIDI 21 through 108, from A0 to C8. The keyboard scrolls horizontally so the keys stay usable.
Does recording upload my playing?
No. The take is recorded as performance events in this tab and the WAV is rendered in your browser when you download it.
Can I practice songs without waiting for downloads?
Yes. The guided studies are local note data, not streamed audio or a remote song API. You can isolate the right hand, left hand or both hands and use a practice click at reduced speed.
Can I share marked notes?
Yes. Mark mode stores exact MIDI notes in the page URL. Copying the share link lets another browser restore the same marks without an account.
Does MIDI work?
On browsers with Web MIDI support, enable MIDI from the control panel, choose an input and play with note velocity. Sustain pedal messages are handled too.