2016-04-07 22:34:52 +02:00
# micro:bit target for PXT
2016-03-10 23:21:48 +01:00
2017-10-16 07:15:43 +02:00
This target allows you to program a [BBC micro:bit ](https://microbit.org/ ) using
2016-05-27 06:38:11 +02:00
PXT ([Microsoft Programming Experience Toolkit](https://github.com/Microsoft/pxt)).
2016-03-10 23:21:48 +01:00
2017-10-16 07:15:43 +02:00
* [Try it live ](https://makecode.microbit.org )
2016-05-11 06:43:12 +02:00
2016-04-07 22:33:55 +02:00
[![Build Status ](https://travis-ci.org/Microsoft/pxt-microbit.svg?branch=master )](https://travis-ci.org/Microsoft/pxt-microbit)
2016-03-11 06:11:16 +01:00
2016-12-07 06:51:51 +01:00
## Issue tracking
2018-02-15 18:33:35 +01:00
Please add an issue if you discover an (unreported) bug.
2016-12-07 06:51:51 +01:00
2016-05-19 19:34:24 +02:00
## Local server
2017-10-16 07:15:43 +02:00
The local server lets you to run the editor and serve the documentation from your own computer.
2016-07-27 22:15:30 +02:00
2016-05-19 19:34:24 +02:00
### Setup
2016-03-10 23:26:59 +01:00
2017-10-16 07:15:43 +02:00
The following commands perform a one-time setup after synching the repo on your machine.
2016-05-18 18:18:14 +02:00
2018-02-24 02:20:31 +01:00
* install node.js 8.9.4 or higher
2016-07-27 22:28:57 +02:00
* install the PXT command line (add ``sudo`` for Mac/Linux shells).
2016-05-18 18:18:14 +02:00
```
npm install -g pxt
```
2018-02-24 02:20:31 +01:00
* install the microbit target
2016-05-18 18:18:14 +02:00
```
2018-02-24 02:20:31 +01:00
pxt target microbit
2016-05-18 18:18:14 +02:00
```
2016-05-19 19:34:24 +02:00
### Running
2016-06-06 19:14:56 +02:00
Run this command to open a local web server (add ``sudo`` for Mac/Linux shells)
2016-05-18 18:18:14 +02:00
```
pxt serve
```
2018-02-24 02:20:31 +01:00
2016-05-27 06:38:11 +02: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-24 02:20:31 +01:00
The server assumes you have yotta installed. You can skip that requirement by adding ``--cloud``.
2016-05-27 06:38:11 +02:00
```
2018-02-24 02:20:31 +01:00
pxt serve --cloud
2016-05-27 06:38:11 +02:00
```
2018-02-24 02:20:31 +01:00
### Updates
2016-07-27 22:28:57 +02:00
2017-10-16 07:15:43 +02: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 19:34:24 +02:00
```
2016-06-06 19:14:56 +02:00
pxt update
2016-05-19 19:34:24 +02:00
```
2016-05-18 18:18:14 +02:00
2018-02-24 02:20:31 +01:00
More instructions are at https://github.com/Microsoft/pxt#running-a-target-from-localhost
2016-04-08 05:48:00 +02:00
2018-02-24 02:20:31 +01:00
## Developer setup
2016-07-28 12:47:45 +02:00
2018-02-24 02:20:31 +01:00
If you need to make source changes to ``pxt`` and ``pxt-microbit``, follow these instructions:
2016-07-28 12:47:45 +02:00
2018-02-24 02:20:31 +01: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 12:47:45 +02:00
2018-02-24 02:20:31 +01: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 12:47:45 +02:00
2017-07-18 20:05:28 +02:00
## Repos
2017-10-16 07:15:43 +02:00
The pxt-microbit target depends on several other repos. The main ones are:
2017-07-18 20:05:28 +02: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-24 04:52:11 +01:00
## History
2017-08-02 20:24:33 +02:00
2018-02-24 04:52:11 +01:00
See the [MakeCode blog ](https://makecode.com/blog ).
2017-07-18 20:05:28 +02:00
2016-06-21 22:17:42 +02: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.