Blockly
| Blockly | |
|---|---|
| Original authors | Neil Fraser, Quynh Neutron, Ellen Spertus, Mark Friedman |
| Developers | Google, MIT |
| Initial release | May 2012 |
| Stable release | 12.1.0
/ 30 May 2025[1] |
| Written in | JavaScript |
| Platform | Web browser |
| Size | 150 KB |
| Available in | 50 languages |
List of languages English | |
| Type | Library |
| License | Apache License 2.0 |
| Website | developers |
| Repository | github |
Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0.[2] It typically runs in a web browser.
Blockly uses visual blocks that help simplify programming, and can generate code in JavaScript, Lua, Dart, Python, or PHP.[3]
History
Blockly development began in summer 2011.
In October 2025, the Raspberry Pi Foundation announced that from 10 November 2025, the Blockly open source library and assets, and key members of the Blockly team will transition from Google to the Raspberry Pi Foundation.[4]
User interface
The default graphical user interface (GUI) of the Blockly editor consists of a toolbox, and a workspace, where a user can drag and drop and rearrange blocks. The workspace also includes, by default.[5] The editor can be modified easily to customize and limit the available editing features and blocks.
Customization
Blockly includes a set of visual blocks for common operations, and can be customized by adding more blocks. New blocks require a block definition and a generator. The definition describes the block's appearance (user interface) and the generator describes the block's translation to executable code. Definitions and generators can be written in JavaScript, or using a visual set of blocks, the Block Factory, which allows new blocks to be described using extant visual blocks; the intent is to make creating new blocks easier.
Applications
Blockly is used in several notable projects, including:
- MIT's Scratch (since version 3.0), visual programming environment for education[6]
- MIT's App Inventor, to create applications for Android.[7]
- Code.org[8]
- Microsoft's MakeCode[9][10]
- PICAXE, to control their educational microchips[11]
Features
- Web-based using Scalable Vector Graphics (SVG)
- Completely client-side JavaScript
- Support of major web browsers
- Support for many programmatic constructs including variables, functions, arrays
- Minimal type checking supported, designed for dynamically typed languages
- Step-by-step code execution for tracing and debugging code[12]
- Localised into 100+ languages[13]
- Support for left-to-right and right-to-left languages[14]
References
- ^ "Release blockly-v12.1.0 · google/blockly". GitHub. Retrieved 27 June 2025.
- ^ Metz, Cade. "Google Blockly Lets You Hack With No Keyboard". Wired.
- ^ "Google's Blockly Teaches You to Create Apps". NBC Bay Area. 13 June 2012.
- ^ CBE, Philip Colligan (2025-10-28). "The new home for Blockly". Raspberry Pi Foundation. Retrieved 2025-10-28.
- ^ Black, Lucy (12 June 2012). "Google Blockly – A Graphical Language with a Difference". I-programmer. Retrieved 3 July 2019.
- ^ "Scratch 3.0's new programming blocks, built on Blockly". Google.
- ^ "MIT App Inventor 2". MIT.
- ^ "Translate Code.org". Code.org.
- ^ "Microsoft MakeCode". Microsoft.
- ^ "Microsoft MakeCode Computer Science Education". Microsoft.
- ^ "PICAXE Blockly". PICAXE. Retrieved 5 July 2020.
- ^ "Blockly Demo: JS-Interpreter". Blockly Samples. Retrieved 24 February 2023.
- ^ "Localisation statistics for the Blockly core module". Translatewiki.net. Retrieved 16 January 2018.
- ^ "Blockly Demo: RTL". Blockly Samples. Retrieved 24 February 2023.