Cavatina comes without a graphical user interface. That is to say, it only relies on the input system itself. “Wait, what?” you say? Let me explain. Cavatina is not a desktop application, it’s a font. You are not presented with a cockpit of buttons or a waterfall of sub-menus, like you mostly are on popular notation programs – it’s overwhelming. You install the font and as such it then becomes available in every application and text editor on your computer. It’s like Helvetica, but less mainstream.
So you choose the font in whatever editor it works and then what? Well, you just start writing. The approach of Cavatina is, in a sense, minimalistic: You write music like you write words. After all, musical notation is written language. Have you ever used a text editor in which you had to drag with your mouse every letter into the word you are trying to construct? I thought so. That said, it’s clear to me that the natural and fastest way of writing music is, and has always been, the computer keyboard. Direct input. That is the concept on which Cavatina is based. You don’t need a MIDI Keyboard or a numeric keypad, just a basic computer keyboard. Cool, now you can write a song on your laptop while you are sitting in an airplane during your flight from New York to Nassau, and may even finish it before it lands.
Having said that, it’s important to know what Cavatina can do and what it can’t. In a nutshell, Cavatina was created with the hope to shorten the path between your ideas and your score. When it comes to sketching musical ideas fast, there aren’t many options out there. With this in mind, Cavatina puts a high priority on input speed, leaving the layout in the background where it should be. The idea here is that you compose with Cavatina and, as soon as the layout starts becoming relevant, you open and keep editing your score with a scorewriter. If you find yourself tweaking the look of your score longer than writing music, or wish to write a scale of slurred 128th notes, it is a signal that you should export the file to MusicXML to carry on your editing with a more complex program.
The price that Cavatina has to pay for the sake of input speed is its fragmented internationalization. For each keyboard layout there must be a different corresponding font. If you are not often writing collaborative work with people from across the country, this shouldn’t be worrying you. In any case, you will only have to install one typeface for the keyboard layout you are using, and then forget about it.
TL;DR? See the concept in action in our 10-minute quickstart!
Cavatina is a font for writing music using a text editor or a browser. Only a computer keyboard is needed for the input and a numeric keypad is not required. Your music is text and as such it will support all common text manipulation commands such as copy, paste, cut, and undo. As you write, the input is interpreted straight away by the text engine, so that firstly it won't feel like coding and, more importantly, there is no need to “compile” it. This makes Cavatina really portable. It is ideal for traveling and teaching music. Also, it can be easily embedded as a webfont in any website.
We want you to be able to capture your musical ideas before you forget them. The input system of Cavatina allows you to type in chords in a matter of seconds using only a basic computer keyboard.
Easy to learn
Cavatina relies on a simple and intuitive input system aiming to make the composition process faster. It keeps you from time-wasting adjustments to the layout, while allowing you to write good-looking music in no time. Our 10-minute quickstart will get you started right away.
MusicXML & MIDI Export
Once you develop an idea with Cavatina, you can export your text file to a MusicXML file with a right-click and do the fine-tuning on any other notation program like Sibelius, Finale or Musescore. Cavatina is best for writing music fast; it is in no way an “advanced” score engraver, nor it strives to be so. Check out the open-source converter which runs with a right-click!
The Cavatina typeface (desktop font collection) is distributed with an End User License Agreement (EULA). When you buy the license for the Cavatina typeface you are agreeing to the terms of service stated in this EULA, which comprises one single user or company. A copy of the EULAs of the desktop fonts and webfonts can be found under the following URL:
If you are interested in buying a license extension for more than one user or a multi-user educational license, don’t hesitate in contacting me directly.
The EULA of the desktop fonts doesn’t allow you to upload any of the Cavatina fonts to a server. For use inside a website you have to buy a webfont license. Contact me to find out about the pricing options for the webfont.
The converter is free and open-source software, just like the music21 library it employs, and is released under the Lesser GNU Public License (LGPL). A copy of the license is included in the installation folder and can also be accessed under the URL:
You can fork the source code from GitHub.
This project wouldn’t have been possible without the support and interest of my friends and family, who indirectly witnessed the development of my project for the last year and a half: thank you for your patience and for being such good listeners. Also, a big thank-you to all musicians and hobbyists that let me interview them.
Thanks to Alan Orozco for his small but valuable contribution of building the groundwork of the parser.
I’m also very thankful and in debt to the authors of music21, an extense Pyhton library for music research. Their work was as useful as it is inspiring to me as a developer.
Last but not least, thanks to all members of the TypeDrawers and Typophile forums for being a constant source of knowledge and inspiration, and for sparking an insatiable ambition in type design and calligraphy within me (cheesy, but true).
Hi! I’m Alexis Luengas, the designer and programmer behind the Cavatina project. You can contact me via email. I usually respond within a few days. I’m always open to suggestions or any kind of comments.