Blocky and Scratch
Blocky and Scratch are used to visually represent coding concepts as interlocking blocks.
https://developers.google.com/blockly/
and
https://scratch.mit.edu/developers/
https://github.com/scratchblocks/scratchblocks
ScratchBlocks is used to write Scratch scripts
Make pictures of Scratch blocks from text