Here at PhonicScore we were like “Great, just what we needed! Oh wait, no MusicXML support? Impossible, there must be something?”
Trust me, there is nothing useful out there, yet.
As a music tech startup adding a web app to our fleet of MusicXML sheet readers, we know how hard it is to build and maintain everything from scratch. At PhonicScore we love to work with VexFlow in order to avoid inventing the wheel twice. Unfortunately VexFlow does not support MusicXML. We are strong believers in MusicXML. Users / consumers / musicians also opted for this format.
Here are five reasons that led to this decision:
1. VexTab does not read MusicXML
VexTab is a language also created by the creator of VexFlow to quickly create, edit, and render standard notation and guitar tablature that comes with VexFlow. VexTab is responsible for reading text commands and calculating the sheet music which is then rendered by VexFlow.
VexTab is proprietary and not free for commercial usage. Meh.
3. Reward for non open source software
On February 8, 2016 VexFlow issued a $5,000 bounty for creating a MusicXML Parser for VexFlow.
If you win, you must transfer full ownership of the code to me. This means that you may be unable to use, build derivative works from, or redistribute any code developed for this bounty.”
We feel that in the future displaying sheet music on the web should be wholesale jerseys common knowledge like it is displaying this piece of text in your browser.
4. Web app “Practice Bird”
Our new product Practice Bird is a practice log for musicians. As a web app we need to display sheet music in web browsers.
5. We love community
A great community already evolved around VexFlow. A recent comment on GitHub shows that there is strong need for a MusicXML parser:
Why don’t we all, everyone in this thread who expressed interest in building this but having it stay open-source, build it together openly on github? […]
– Mike Turley on GitHub, March 24, 2016 https://github.com/0xfe/vexflow/issues/323#issuecomment-200930175
What are we waiting for? Let’s get started and build this together!