C++ XSLT C JavaScript Python Perl Other


License: LGPL v3 Build Status Build status

Verovio is a fast, portable and lightweight library for engraving Music Encoding Initiative (MEI) music scores into SVG. Verovio can be used as a standalone command-line tool for converting a MEI files, as the music rendering library for applications, or it can be compiled to Javascript using the Emscripten LLVM-to-JavaScript compiler.

See the JavaScript toolkit running in the MEI Viewer and check out the tutorial for its web integration and for enabling user interaction.

Choice interaction

Verovio can also render Plain and Easy (PAE) code and DARMS code and has a basic MusicXML import function. It is designed as a tool usable as a one-step conversion tool and it is written in pure standard C++ with no dependencies on third-party frameworks and libraries.

Verovio follows the Standard Music Font Layout (SMuFL) specification and the font can be changed for personalizing the output.

The project page is http://www.verovio.org. Verovio is available under the LGPL license (see LICENSE.txt).


The development version is available via NPM

$ npm install verovio-dev


The code for the attribute classes of Verovio are generated from the MEI schema using a modified version of LibMEI available here. The code generated is included in the Verovio repository and the LibMEI repository does not need to be cloned for building Verovio.


If you are willing to contribute to Verovio, please follow the contribution and coding style guidelines.

Example output

This page was generated with version 0.9.13-dev-b953d3b

Example page