Skip to content
A Blocks / JavaScript code editor for the micro:bit built on Microsoft MakeCode
TypeScript JavaScript C++ C# Objective-C CSS Other
Branch: master
Clone or download
abchatra Releasing 2.0.10 (#2476)
With radio strength signal fix for hot or cold
Latest commit 0f1f6d6 Oct 15, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Locking old issues Sep 25, 2019
.vscode fixing getting started Apr 29, 2017
clients removed chrome extension code Oct 2, 2018
docfiles Beta release fixes (#1850) Feb 26, 2019
docs Releasing 2.0.10 (#2476) Oct 15, 2019
editor add alt attributes to download screens (#2415) Sep 6, 2019
electron Release Electron app v0.9.15 Mar 7, 2017
external/sha Dapjs (#1963) Apr 5, 2019
fieldeditors Add field gesture and field images for the different gestures (#803) May 25, 2018
libs Fixing signal strength (#2474) Oct 15, 2019
pxtwapp super basic trouble shooting page for windows app (#585) Dec 5, 2017
resources Update hero banner with latest (#1610) Nov 9, 2018
sim fixing radio stack (#2461) Oct 5, 2019
tests Update tests. remove converted test for the time being Apr 21, 2018
theme Set dimmer background to blue (#1949) Apr 2, 2019
.clang-format Implement tagged integers in C++ (#813) May 29, 2018
.gitattributes Add own manifest Apr 9, 2016
.gitignore remove package-lock (#2033) Apr 27, 2019
.travis.yml fix build (#2360) Aug 6, 2019 Updating with the MIT license text and contributing guideline Nov 29, 2016
LICENSE.txt Updating with the MIT license text and contributing guideline Nov 29, 2016 Updating Readme with branch information. Jul 25, 2019
THIRD-PARTY-NOTICES.txt enfore v0 sounds (#1231) Sep 13, 2018
faviconDescription.json adding favicon configuration file Oct 20, 2016
microbit.code-workspace Remove logo glow to optimize gif generation (#1894) Mar 20, 2019
package.json 2.1.15 Oct 5, 2019
ptrcheck-ignore update ignore file Jul 14, 2016
pxtarget.json add query variant to hide toolbar (#2458) Oct 4, 2019
targetconfig.json add Keyestudio robot car (#2452) Sep 30, 2019 Remove 3 converter tests with overflowing numbers Oct 4, 2016
tslint.json fixing various lint violations May 5, 2016
webmanifest.json Updating all reference to (#460) Jul 24, 2017

micro:bit target for PXT

Build Status

pxt-microbit is a Microsoft Programming Experience Toolkit (PXT) target that allows you to program a BBC micro:bit.

Issue tracking

Please add an issue if you discover an (unreported) bug.

Developing new extensions

Authoring and testing of new extensions can be done directly from the web editor. See our documentation on how to get started. If you want to run the editor locally, keep reading.

Local server

The local server lets you to run the editor and serve the documentation from your own computer. It is meant for a single developer used and not designed to serve the editor to a large amount of users.

Developer Setup

This is the typical setup used by the MakeCode team to work on the microbit.

  1. Install Node.js 8.9.4 or higher.
  2. Install Docker if you plan to build .cpp files.
  3. Clone the pxt repository.
git clone
cd pxt
  1. Install the dependencies of pxt and build it
npm install
npm run build
cd ..
  1. Clone the pxt-common-packages repository
git clone
cd pxt-common-packages
npm install
cd ..
  1. Clone this repository.
git clone
cd pxt-microbit
  1. Install the PXT command line (add sudo for Mac/Linux shells).
npm install -g pxt
  1. Install the pxt-microbit dependencies.
npm install
  1. Link pxt-microbit back to base pxt repo (add sudo for Mac/Linux shells). This step is only required if you intend to make changes to pxt and/or pxt-common-packages repos. If all you want is serve a local Makecode, you can skip this step.
npm link ../pxt
npm link ../pxt-common-packages

Note the above command assumes the folder structure of

  |       |                        |
 pxt      pxt-common-packages  pxt-microbit


Run this command from inside pxt-microbit to open a local web server

pxt serve

If the local server opens in the wrong browser, make sure to copy the URL containing the local token. Otherwise, the editor will not be able to load the projects.

If you need to modify the .cpp files (and have installed yotta), enable yotta compilation using the --localbuild flag:

pxt serve --local

If you want to speed up the build, you can use the rebundle option, which skips building and simply refreshes the target information

pxt serve --rebundle


Sometimes, your built folder might be in a bad state, clean it and try again.

pxt clean


Make sure to pull changes from all repos regularly. More instructions are at


The pxt-microbit target depends on several other repos. The main ones are:


See the MakeCode blog.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact with any additional questions or comments.


MICROSOFT, the Microsoft Logo, and MAKECODE are registered trademarks of Microsoft Corporation. They can only be used for the purposes described in and in accordance with Microsoft’s Trademark and Brand guidelines published at If the use is not covered in Microsoft’s published guidelines or you are not sure, please consult your legal counsel or MakeCode team (

You can’t perform that action at this time.