First public release of swift-sheet-music — a Swift package for working with engraved music notation.
Highlights
- MuseScore
.mscx/.msczimport and export (MuseScore 4 default, MuseScore-3.6.2-flavoured viaMSCXEncoderOptions(targetVersion: .v3)). - MusicXML
.musicxml/.mxlimport. - A typed,
Sendablevalue-type score model (SheetMusicCore) with parse diagnostics. - Score → Standard MIDI File rendering, verified against MuseScore's own
midiexport_tests.cppfixtures via semantic-equivalence comparison. - A pure-geometry layout engine with a
FontMetricsProviderDI seam. - SwiftUI notation viewer (
SheetMusicUI) with a moving playback cursor, and PDF export (SheetMusicPDF). - AVFoundation playback and audio-file export (
SheetMusicAudio), including a configurable count-in / pre-roll click. - Experimental PDF-score import.
- Android: the Foundation-only subset cross-compiled via the Swift Android SDK, plus Kotlin AAR modules for JNI bridging and FluidSynth + Oboe playback.
Installation
.package(url: "https://github.com/jiyimeta/swift-sheet-music.git", from: "1.0.0"),Licensing
Source (Sources/) is MIT. Test fixtures under Tests/ are GPL-3.0 copies of MuseScore's own fixtures, confined to the test target. See NOTICE for full provenance and trademark disclosure. Unofficial — not affiliated with MuseScore Limited / Muse Group.