Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. It is a project of Google and is free and open-source software released under the Apache License 2.0.
developers.google.com/blockly/guides/overview