| File | Date | Author | Commit |
|---|---|---|---|
| .github | 6 days ago |
|
[069c50] Initial release |
| OpenPiano | 6 days ago |
|
[069c50] Initial release |
| .gitignore | 6 days ago |
|
[069c50] Initial release |
| LICENSE | 6 days ago |
|
[069c50] Initial release |
| OpenPiano.slnx | 6 days ago |
|
[069c50] Initial release |
| README.md | 6 days ago |
|
[d4d7f3] Update README |
A local-first desktop piano for practice, composition, and sound design
with SoundFonts, real-time controls, and MIDI recording/export.
Website • Releases • Issues • Documentation • License
OpenPiano is a Windows desktop piano app that lets you play and practice using your PC keyboard, mouse, or a MIDI controller.
It is built to be lightweight and non-dependent on cloud accounts or online dependencies.
Tutorial.61-key or 88-key). .mid. .sf2, .sf3) with bank/preset selection.mid exportOpenPiano supports three input paths in the same session:
Keyboard: play directly with your keyboard when no external controller is connected.Mouse: click and drag on keys for quick testing and note checks.MIDI: connect a MIDI keyboard/device and select it in the input dropdown.Use SoundFonts to change tone instantly while keeping the same play workflow.
.sf2 and .sf3 instrumentsRecord takes directly in the app and export standard MIDI files.
.mid for DAW editing, arrangement, or archiveOpenPiano persists app settings in OpenPiano_config.json.
Save location behavior:
OpenPiano.py in source runs)%LOCALAPPDATA%\OpenPiano\OpenPiano_config.json.sf2, .sf3.midcd OpenPiano
py -m pip install -r requirements.txt
py OpenPiano.py
py -m pip install PySide6 pyfluidsynth mido python-rtmidi
cd OpenPiano
py -m PyInstaller -F -w --name OpenPiano --icon icon.ico --clean --add-data "icon.ico;." --add-binary "third_party\fluidsynth\bin\*;third_party\fluidsynth\bin" --hidden-import fluidsynth --hidden-import mido --hidden-import mido.backends.rtmidi --hidden-import rtmidi --exclude-module numpy OpenPiano.py
.github/SECURITY.md.Contributions are welcome.
Please read .github/CONTRIBUTING.md before opening issues or pull requests.
Apache License 2.0. See LICENSE.