Contributing
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:
- concerto-cli : command-line interface for Concerto
- concerto-codegen : model converters and tools for Concerto model files
- concerto-metamodel : contains utility functions for accessing and manipulating the Concerto metamodel