Sheetmusic4J for Java & JavaFX
Parse and render sheet music in Java(FX).
No WebView required.
No release yet...
Sheetmusic4J is an open-source Java library that parses MusicXML into Java objects and renders them as native JavaFX music sheet views — no WebView, no browser engine, no JavaScript bridge.
Quick start
Sheetmusic4J requires Java 21 or higher and is available from Maven Central. Add the fxviewer dependency (it includes the core library):
<dependency>
<groupId>com.sheetmusic4j</groupId>
<artifactId>fxviewer</artifactId>
<version>${sheetmusic4j.version}</version>
</dependency>implementation("com.sheetmusic4j:fxviewer:$sheetmusic4jVersion")implementation "com.sheetmusic4j:fxviewer:${sheetmusic4jVersion}"Then load a file and drop the view into your scene:
TODOWhy Sheetmusic4J
Native JavaFX rendering
Drawn straight to a JavaFX
Canvas. No browser, no JS bridge. It’s just a Node.Parse & generate
Read MusicXML into typed Java objects, and write valid files back out.
Modern, minimal Java
Built on Java 21 LTS with Records — a small, maintainable codebase.
Lightweight & offline-first
Needs only
javafx.graphics. Fast startup, tiny jlink footprint, no network.The sources of this project are available on github.com/sheetmusic4j/sheetmusic4j.