2016-04-07 13:34:52 -07:00
# micro:bit target for PXT
2016-03-10 14:21:48 -08:00
2017-10-15 22:15:43 -07:00
This target allows you to program a [BBC micro:bit ](https://microbit.org/ ) using
2016-05-26 21:38:11 -07:00
PXT ([Microsoft Programming Experience Toolkit ](https://github.com/Microsoft/pxt )).
2016-03-10 14:21:48 -08:00
2017-10-15 22:15:43 -07:00
* [Try it live ](https://makecode.microbit.org )
2016-05-10 21:43:12 -07:00
2016-04-07 13:33:55 -07:00
[![Build Status ](https://travis-ci.org/Microsoft/pxt-microbit.svg?branch=master )](https://travis-ci.org/Microsoft/pxt-microbit)
2016-03-10 21:11:16 -08:00
2016-12-06 21:51:51 -08:00
## Issue tracking
2018-02-15 18:33:35 +01:00
Please add an issue if you discover an (unreported) bug.
2016-12-06 21:51:51 -08:00
2016-05-19 10:34:24 -07:00
## Local server
2017-10-15 22:15:43 -07:00
The local server lets you to run the editor and serve the documentation from your own computer.
2016-07-27 13:15:30 -07:00
2016-05-19 10:34:24 -07:00
### Setup
2016-03-10 14:26:59 -08:00
2017-10-15 22:15:43 -07:00
The following commands perform a one-time setup after synching the repo on your machine.
2016-05-18 09:18:14 -07:00
2018-02-23 17:20:31 -08:00
* install node.js 8.9.4 or higher
2016-07-27 13:28:57 -07:00
* install the PXT command line (add ``sudo` ` for Mac/Linux shells).
2016-05-18 09:18:14 -07:00
```
npm install -g pxt
```
2018-02-23 17:20:31 -08:00
* install the microbit target
2016-05-18 09:18:14 -07:00
```
2018-02-23 17:20:31 -08:00
pxt target microbit
2016-05-18 09:18:14 -07:00
```
2016-05-19 10:34:24 -07:00
### Running
2016-06-06 10:14:56 -07:00
Run this command to open a local web server (add ``sudo` ` for Mac/Linux shells)
2016-05-18 09:18:14 -07:00
```
pxt serve
```
2018-02-23 17:20:31 -08:00
2016-05-26 21:38:11 -07:00
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.
2018-02-23 17:20:31 -08:00
The server assumes you have yotta installed. You can skip that requirement by adding ``--cloud` `.
2016-05-26 21:38:11 -07:00
```
2018-02-23 17:20:31 -08:00
pxt serve --cloud
2016-05-26 21:38:11 -07:00
```
2018-02-23 17:20:31 -08:00
### Updates
2016-07-27 13:28:57 -07:00
2017-10-15 22:15:43 -07:00
To update your PXT version and make sure you're running the latest tools, run (add ``sudo` ` for Mac/Linux shells):
2016-05-19 10:34:24 -07:00
```
2016-06-06 10:14:56 -07:00
pxt update
2016-05-19 10:34:24 -07:00
```
2016-05-18 09:18:14 -07:00
2018-02-23 17:20:31 -08:00
More instructions are at https://github.com/Microsoft/pxt#running -a-target-from-localhost
2016-04-07 20:48:00 -07:00
2018-02-23 17:20:31 -08:00
## Developer setup
2016-07-28 11:47:45 +01:00
2018-02-23 17:20:31 -08:00
If you need to make source changes to ``pxt`` and ``pxt-microbit` `, follow these instructions:
2016-07-28 11:47:45 +01:00
2018-02-23 17:20:31 -08:00
* clone https://github.com/Microsoft/pxt
```
git clone https://github.com/Microsoft/pxt
```
* checkout the ``v0` ` branch in pxt
```
cd pxt
git checkout v0
```
* ``npm install`` and run ``jake` `
```
npm install
jake
```
* clone https://github.com/Microsoft/pxt-microbit
```
cd ..
git clone https://github.com/Microsoft/pxt-microbit
```
* ``npm install`` and link to the ``pxt` ` folder
```
cd pxt-microbit
npm install
npm link ../pxt
```
2016-07-28 11:47:45 +01:00
2018-02-23 17:20:31 -08:00
Both of those repoes are now ready to go. To start your local server, run
```
pxt serve
```
or, without yotta tools,
```
pxt serve --cloud
```
2016-07-28 11:47:45 +01:00
2017-07-18 11:05:28 -07:00
## Repos
2017-10-15 22:15:43 -07:00
The pxt-microbit target depends on several other repos. The main ones are:
2017-07-18 11:05:28 -07:00
- https://github.com/Microsoft/pxt, the PXT framework
- https://github.com/lancaster-university/microbit, basic wrapper around the DAL
- https://github.com/lancaster-university/microbit-dal
2018-02-23 19:52:11 -08:00
## History
2017-08-02 11:24:33 -07:00
2018-02-23 19:52:11 -08:00
See the [MakeCode blog ](https://makecode.com/blog ).
2017-07-18 11:05:28 -07:00
2016-06-21 13:17:42 -07:00
## Code of Conduct
This project has adopted the [Microsoft Open Source Code of Conduct ](https://opensource.microsoft.com/codeofconduct/ ). For more information see the [Code of Conduct FAQ ](https://opensource.microsoft.com/codeofconduct/faq/ ) or contact [opencode@microsoft.com ](mailto:opencode@microsoft.com ) with any additional questions or comments.