“…Block-based environments have seen many uses in the software engineering field [1,2,11,37,50,51]. They have also been widely investigated as educational tools [9,13,22,25,31,46,49]. However, developing block-based environments currently lacks solid engineering principles, which leads to ad-hoc implementation using various technologies and frameworks.…”