Skip to main content


We love Open Source contributions; whether they be fixes to this documentation, or Concerto bug reports, feature requests, or code contrbutions.

Financial contributions are also very welcome and can be made to Accord Project, via the Linux Foundation Crowdfunding portal.

Structure of the Code

Top level repository (concerto), with sub packages. Each sub-package is published as an independent npm module using lerna:

  • concerto-core : core library for model management/parsing/validation/serialization
  • concerto-util : contains utility functions used in other parts of the code and fundamentally independent from Concerto as a modeling language
  • concerto-cto : contains the parser for the .cto syntax for Concerto. The parser now outputs a proper Concerto object, instance of the metamodel rather than a custom JSON object.
  • concerto-vocabulary : functionality to handle model vocabularies and localization
  • concerto-analysis : tools for comparing model files
  • concerto-types : TypeScript type definitions for Concerto
  • concerto-dotnet : .NET type definitions for Concerto, and serialization tools

Independent repositories for the following packages: