ZaneH
piano-trainer
TypeScript

๐ŸŽน Memorize piano scales with ease! A piano practice program w/ MIDI support. Consider it an interactive reference manual

Last updated Jul 4, 2026
2.2k
Stars
66
Forks
2
Issues
+1
Stars/day
Attention Score
83
Language breakdown
TypeScript 93.4%
Rust 3.9%
HTML 1.2%
Nix 0.9%
CSS 0.5%
Shell 0.1%
โ–ธ Files click to expand
README

Piano Trainer - Memorize piano scales and chords with ease | Product Hunt

Piano Trainer

Learn to play the piano at your own pace through various modes of practice. Watch the video

Piano Trainer screenshot Piano Trainer screenshot #2

Features

  • [x] MIDI compatible
- [x] Home row keyboard input
  • [x] Cross-platform support
  • [x] Interactive scale practice
  • [x] Interactive chord practice
  • [x] Interactive fifths practice
  • [x] Interactive quiz
  • [x] Hard mode
  • [x] Shuffle mode

Coming Soon

  • [ ] More scales
  • [ ] Settings
- [ ] Toggle questions in quiz mode - [x] Change keyboard sound

Releases

Download for free on all platforms on itch.io/piano-trainer

or download the latest build here

Run Locally

You'll need to setup Rust and Tauri CLI by following the Getting Started guide here.

$ git clone https://github.com/ZaneH/piano-trainer.git
$ cd piano-trainer
$ yarn tauri dev

Build Target Binary

Outputs to ./src-tauri/target/release/bundle

$ yarn tauri build

Build and Install Flatpak

For non-FHS distros, the Flatpak can be used as a self-contained runtime environment. Ensure these build dependencies are installed: flatpak, flatpak-builder, and appstream. After cloning the repo, use the following commands to install and run Piano Trainer:

$ flatpak-builder --force-clean --user --install-deps-from=flathub --install builddir flatpak/com.zane.piano-trainer.yaml
$ flatpak run com.zane.piano-trainer

Contributions

Contributions are more than welcome. Read the Technical Breakdown here to learn about the codebase.

Create a PR pointing to the dev branch. Stable builds will be merged into main.

Code formatting is automatically handled with Git Hooks.

Credits

Special thank you to ruohki/tauri-midi-example, kevinsqi/react-piano, and the Tauri Discord community.

๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท ZaneH/piano-trainer ยท Updated daily from GitHub