Blockly is a client-side JavaScript library for creating visual block programming editors. It is a project of Google and is open-source under the Apache 2.0 License. It runs in a web browser, and resembles Scratch.
Contents
Blockly uses blocks that link together to make writing code easier, and can generate JavaScript, Python, PHP or Dart code. It can also be customised to generate code in any computer language.
History
Development of Blockly started in summer of 2011, and the first public release was at Maker Faire in May 2012. Blockly was originally designed as a replacement for OpenBlocks in App Inventor. Neil Fraser started the project with Quynh Neutron, Ellen Spertus and Mark Friedman as contributors.
User interface
The user interface of a Blockly program consists of a toolbox, which holds all the available blocks and a workspace, where you place the blocks. There is a trashcan on the workspace which deletes any blocks dragged onto it.
Customising Blockly
Blockly comes with a basic set of blocks for common operations, but can be customized by adding more blocks. New blocks require a block definition and a generator. The definition describes the block's appearance and the generator describes the block's translation to executable code. There is an example program called Block Factory which makes writing the block definition easier by using Blockly blocks to construct a new block.
Applications using Blockly
Blockly is used in a number of projects: