Skip to main content

Smart Legal Contracts, Open Source

Cicero

Create templates for human-readable and machine-executable contracts using Open Source Cicero.

TypeScript

Write executable business logic for legal contracts using TypeScript, with types generated from your Concerto model.

Concerto

Model the data for your contracts in a platform neutral format with the Concerto schema language.

Templates

Accord Project Templates are composed of three elements: the Text (the natural language), the Model (the data model), and the Logic (the executable business logic). When combined these three elements allow Accord Project templates to be both human-readable and machine-executable.
The three elements of Accord Project templates: Text, Model, Logic. These elements form a triangle.
An example of an Accord Project template text. There are 3 paragraphs of a contract with variables in each paragraphs and markdown annotations for formatting

Text

CiceroMark lets you capture the data in a natural language clause or contract text through template variables. And it supports rich text markdown to ensure that your contracts look professional.

Model

Concerto lets you model the data used in your templates in a flexible and expressive way. Models can be written in a modular and portable way so they can be reused in a variety of contracts. Learn more about Concerto.
A diagram with an example of a Concerto model
Example of TypeScript template logic code

Logic

Template logic is written in TypeScript using a class-based pattern that integrates directly with the Concerto data model. Logic can be embedded inline in template text or defined in a separate TypeScript class that extends TemplateLogic.

Template Playground

You can author and test templates online in the Accord Project Template Playground. Search for existing templates, edit the contract text and execute the logic.
An example a template being edited. There is an option to edit the full contract or a single clause. There is also a search bar at the top center for users to search for specific templates.