/cicero-vscode-extension

VS Code extension for editing Cicero templates and Ergo logic

Primary LanguageTypeScriptApache License 2.0Apache-2.0

Accord Project Extension for VS Code

Version number Installation count GitHub license Join the Accord Project Slack

The Accord Project extension helps developers to create, test and debug Accord Project templates.

For a step-by-step guide on getting started with the extension's features, access our VS Code Tutorial. For more comprehensive documentation, follow this link.

Accord Project Extension Homepage

Installation

Please visit the Visual Studio Code Marketplace for installation and more details.

Features

  • Create data models for templates using the Concerto modelling language
  • Develop the logic for templates using the Ergo domain specific language
  • Write the natural language text for templates using the CiceroMark extended markdown syntax
  • Run unit tests for templates using the Cucumber BDD testing framework
  • Trigger templates (send them data and view the results)
  • Syntax highlighting for all files
  • Compilation and problem markers
  • HTML preview for template markdown text and Concerto models

Commands

  • Work offline by downloading Concerto model dependencies (context-click on a *.cto file)
  • Package templates into Cicero Template Archive (cta) files (context-click on root folder)
  • Export PlantUML class diagram (context-click on a *.cto file)
  • Trigger a template, parsing data from sample.md and passing in request.json and state.json (context-click on root folder)

Views

  • HTML preview for template text (open grammar.tem.md and then press the Open Preview icon in the editor or context menu)
  • HTML preview for Concerto models (open *.cto and then press the Open Preview icon in the editor or context menu)

Quick Fixes

  • Add a variable to the template model if an undeclared variable is used in grammar.tem.md. Note that the model.cto file must be open for the quick fix to be available.

Concerto Snippets

The extention adds code snippets for the following elements of the Concerto language.

Element Prefix
Asset asset
Participant participant
Transaction transaction
Concept concept
Enum enum
Event event
Namespace namespace
Import import
String string
Double double
Integer int
Long long
DateTime date
Boolean bool

Ergo Snippets

The extention adds code snippets for the following elements of the Ergo language.

Element Prefix
Clause clause
Contract contract

Contact Us

If you have find any problems or want to make suggestions for future features please create issues and suggestions on Github. For any questions please join the Accord Project Slack community and post questions to the #technology-cicero channel.

Acknowledgments

Thanks to our friends at IBM Blockchain Platform for inspiring us with their existing plugin.


Accord Project Logo

GitHub license Join the Accord Project Slack

Accord Project is an open source, non-profit, initiative working to transform contract management and contract automation by digitizing contracts. Accord Project operates under the umbrella of the Linux Foundation. The technical charter for the Accord Project can be found here.

Learn More About Accord Project

Contributing

The Accord Project technology is being developed as open source. All the software packages are being actively maintained on GitHub and we encourage organizations and individuals to contribute requirements, documentation, issues, new templates, and code.

Find out what’s coming on our blog.

Join the Accord Project Technology Working Group Slack channel to get involved!

For code contributions, read our CONTRIBUTING guide and information for DEVELOPERS.

README Badge

Using Accord Project? Add a README badge to let everyone know: accord project

[![accord project](https://img.shields.io/badge/powered%20by-accord%20project-19C6C8.svg)](https://www.accordproject.org/)

License

Accord Project source code files are made available under the Apache License, Version 2.0. Accord Project documentation files are made available under the Creative Commons Attribution 4.0 International License (CC-BY-4.0).

Copyright 2018-2019 Clause, Inc. All trademarks are the property of their respective owners. See LF Projects Trademark Policy.