Verovio licensing
Verovio is licensed under the OSI-approved GNU Lesser General Public License (LGPLv3). This means that Verovio can be used in any contexts that are compliant with the requirements of that license. In this section, we explain more concretely what you can do with it in your project, but also what is required or not allowed for you to do, and what we additionally recommend.
What is allowed
The LGPLv3 license allows you to use the Verovio library as-is in open-source projects that are compliant with this license. It can also be used in commercial products that are open-source or not. It can be a web application, a desktop application or a mobile one. The Verovio library can be embedded in the product and shipped with it without having your product itself to be open-source as long as the Verovio library is not modified and is dynamically linked to your product.
What is required
Whichever use you make of the library, you have to give visible credit to the Verovio library. For a web application, it has to be through a prominent notice on your web-site. For a mobile application, it has to be given in the metadata of the application (e.g., iOS App Store or the Google Play store).
Here are some minimal examples to follow:
- Enote in the App Store
- Trala in Google Play
- NomadPlay web application
Using Verovio in a product without giving credit is a clear license violation. However, it is also important to understand that, by giving the appropriate credits, you are not only fulfilling the very basic and free-of-charge requirements of the license but also supporting the community by recognizing its work. This will help us make Verovio better and more sustainable and will be beneficial to all users - including you - in the long-run.
What is not allowed
You are not allowed to make any modifications to the Verovio library without making all of your changes publicly available and under the original LGPLv3 license. For example, if you improve the layout algorithm, or add support for additional music notation elements, these improvements must be made open-source under LGPLv3. Not doing it is also a license violation and is un-supportive of the community.
What is recommended
Providing credit if you use Verovio, and making the source code of your modifications to the Verovio library available to the community, are the only minimal legal requirements. However, we strongly encourage you to go one step further and to ask for your changes to be integrated into the original code-base of Verovio with a pull-request to the rism-digital/verovio repository. Before your changes can be integrated into the repository, we will need you to accept the Verovio Contributor License Agreement (CLA). This is a standard procedure for open-source projects and will allow for the community to benefit directly from your work.
We would also be happy to hear about your use of Verovio in your applications. Please get in touch if you are using Verovio, and let us know where we can learn more about your project!