Skip to main content

Try Concerto in your browser

No install required. Write a .cto model and watch it compile live to TypeScript, Java, Go, JSON Schema, GraphQL, Protobuf and more — everything runs client-side in your browser.

concerto-playground.accordproject.org

Easy to Use

Designed from the ground up to be easy to learn, for both newcomers and data modeling pros.

brain-1

Powerful Tools

Import your existing models, or convert Concerto models to 14+ output formats.

network-www

Built for the Web

Import models from URLs. Lightweight browser compatible runtime.

Schemas, for People too

Business and product teams are the domain experts, and we believe that they should own domain models too.

Popular schema languages are designed to be machine readable, but are not accessible for non-technical people.

Concerto strives for the expressiveness of UML, but with compatibility to modern technology stacks.
concept Address {
o String street
o String city
o String postCode
o Country country
}

concept Person identified by name {
o String name
o Address address optional
@description("Height (cm)")
o Double height range=[0.0,]
o DateTime dateOfBirth
}

enum Country {
o UK
o USA
o FRANCE
o GERMANY
o JAPAN
}

Platform Neutral, but Runtime Compatible

Concerto's code generation capabilities let you use models across multiple platforms. Supported targets include: Apache Avro, C# (.NET), Go, GraphQL, Java, JSON Schema, Markdown, Mermaid UML, OData (EDM), OpenAPI, PlantUML, Protocol Buffers, Rust, TypeScript, XML Schema, & custom formats.

Bootstrap your models from existing OpenAPI specifications, JSON Schema models, or natural language text such as agreements.

Give it a try

  1. No install needed — open the Playground

    Launch the Playground ↗
  2. Ready to build? Install the CLI

    npm i -g @accordproject/concerto-cli
  3. Read these