It’s a quite rewarding little piece of technology, because you get results quite fast.
I can see several use cases in the openEHR world:
- AQL editor
- Quick & dirty archetype editor (probably generated automatically from RM / BMM)
- Task Planning editor (?)
For any given use case, at least the following things should be defined:
- Json definition of a given block (how is the block represented, which connections and blocks are allowed, etc)
For this, there is already an official blockly-based editor to generate your blocks, but I recommend to read the documentation first.
- Define how your block transforms into a given language (AQL, ADL, etc.). This has to be done by hand as far as I know, but it’s as complex as your potential grammar
- (optional) Split your blocks into categories
- (optional) Define translations for your components labels
- (optional) Define any custom editor for your leaf nodes (defined also in JS)
Documentation is quite nice, with good examples. Seems to be a good community around it, specially in the educational area. There is already an open source project for an SQL blockly-based editor which maybe is also interesting.