Skip to content
Scratch Blocks is a library for building creative computing interfaces.
Branch: develop
Clone or download
chrisgarrity Merge pull request #1926 from chrisgarrity/translations-apr17
Pull updated translations from Transifex.
Latest commit 937e479 Apr 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Improve contribution guidelines and issue/pr templates Jan 17, 2017
.tx Sync transtions with Transifex Aug 10, 2018
blocks_common Fix comment Nov 5, 2018
blocks_horizontal Lint in block definitions May 2, 2018
blocks_vertical Merge pull request #1896 from julescubtree/fix-build Mar 15, 2019
build Remove generators Oct 4, 2018
core Merge pull request #1828 from epicfaace/feature/direction-text Mar 14, 2019
gh-pages Add Multi Playground Link to GH-Pages (#767) Jan 13, 2017
i18n Update and switch to reviewed translations Dec 6, 2018
media Optimize SVG Nov 5, 2018
msg Pull updated translations from Transifex. Apr 17, 2019
shim add missing newlines Jun 21, 2018
.editorconfig Restore editor config May 3, 2016
.eslintignore Remove generators Oct 4, 2018
.eslintrc Require spaces around infix ops Jun 21, 2018
.gitignore Add dart to gitignore Oct 4, 2018
.npmrc Setting up npm registry for this repo. (#520) Aug 19, 2016
LICENSE Rename COPYING to LICENSE. Re GH-304 May 3, 2016 Update README to clarify recommended usage of the Scratch VM Oct 4, 2018
TRADEMARK Update TRADEMARK Jun 18, 2018 sort filenames in gen_blocks for deterministic build order Feb 12, 2019 Fix typo in file Oct 4, 2018 Move local build files to the top level Apr 18, 2018
package.json added persian and central kurdish Feb 8, 2019 Cleanup May 3, 2018


Scratch Blocks is a library for building creative computing interfaces.

Build Status Dependency Status devDependency Status


Scratch Blocks is a fork of Google's Blockly project that provides a design specification and codebase for building creative computing interfaces. Together with the Scratch Virtual Machine (VM) this codebase allows for the rapid design and development of visual programming interfaces. Unlike Blockly, Scratch Blocks does not use code generators, but rather leverages the Scratch Virtual Machine to create highly dynamic, interactive programming environments.

This project is in active development and should be considered a "developer preview" at this time.

Two Types of Blocks

Scratch Blocks brings together two different programming "grammars" that the Scratch Team has designed and continued to refine over the past decade. The standard Scratch grammar uses blocks that snap together vertically, much like LEGO bricks. For our ScratchJr software, intended for younger children, we developed blocks that are labelled with icons rather than words, and snap together horizontally rather than vertically. We have found that the horizontal grammar is not only friendlier for beginning programmers but also better suited for devices with small screens.


The "getting started" guide including FAQ and design documentation can be found in the wiki.


We provide Scratch free of charge, and want to keep it that way! Please consider making a donation to support our continued engineering, design, community, and resource development efforts. Donations of any size are appreciated. Thank you!

You can’t perform that action at this time.