The technology behind Chordzy
Chordzy is one program that runs almost anywhere. Most of what makes that possible, we built in-house.
It's cross-platform. One codebase runs in a web browser, on desktop, on mobile and on stand-alone hardware. The web version is the same game, embedded in the site. That codebase sits on Unity3D, a game engine, since a music app needs what a game needs: smooth graphics, clear sound and fast networking. The desktop app comes for macOS, Windows and Linux.
It has a built-in synthesizer engine. Your MIDI keyboard can sound like a grand piano, an organ or any other instrument in the catalog, with no extra software. That catalog holds 1,021 instrument presets from 13 SoundFont files.
The engraving is built from scratch. Chordzy lays out its own sheet music, which is why it renders smoothly and looks the same on every screen. It reads MusicXML, the most common file format for sheet music. The same engine draws the preview images and PDF downloads on the website.
Jams use real-time technology for ultra-fast connections. Two people can play together over the internet and still keep time. Chordzy never sends audio. It sends each key press as a tiny event over UDP, and the other computer makes the sound. The data is under 0.1% the size of a voice call's audio, so a note usually crosses the country in 20 to 40ms. Web browsers cannot send UDP, which is why jams need the app.
Behind the lessons, Chordzy tracks every song you play, down to the measure, and uses spaced repetition to pick what you review next. The educational theory page explains the thinking.