Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.

Blockly (Microsoft MakeCode fork)

This is a fork of Blockly, an open source visual programming environment. The fork is maintained by the Microsoft MakeCode team, and is used to power the blocks environment in PXT.

Major additions and changes in this fork:


  • node, npm
  • python


git clone
cd closure-library
git checkout v20180805
cd ../
git clone
cd pxt-blockly
npm install .


  • npm run build:core --closure-library to build blockly (install gulp if needed npm install -g gulp)

Update Blockly.d.ts

  • gulp typings to regenerate blockly.d.ts

Testing local changes in PXT

  • npm run pxt:test to generate the blockly-compressed, blocks-compressed, and typings files, and copy them to pxt-blockly
  • run gulp in pxt to rebuild the pxt blockly files
  • run pxt clean && pxt serve in the target directory (eg pxt-arcade, or pxt-minecraft)

This can be combined into one command (starting from the target directory):

cd ../pxt-blockly && npm run pxt:test && cd ../pxt && gulp && cd ../pxt-arcade && pxt clean && pxt serve --rb

Make sure you've checked out the correct closure-library (see above)

See more tips about pxt+pxt-blockly testing.

Updating pxt-blockly in PXT

  • gulp bump --closure-library to bump blockly version, commit, and tag.

  • After the Travis has deployed the package to npm, update the pxt-blockly version in package.json in the pxt repo.


There is a playground manual testing page at tests/playground.html, which requires no build step or server running.


The original Google/Blockly is licensed under Apache License (Version 2.0).

New code is licensed under MIT.