Microsoft MakeCodeを支えるPXTの編集基盤
プロジェクト概要:Microsoft MakeCode (PXT - プログラミングエクスペリエンスツールキット)。 `Microsoft MakeCode はユーザー向けエディターでの名前であり、PXT はすべての GitHub ソースで使用されます。
ひと目でわかる
- これは何?
- 初心者向けプログラミング体験を作るPXTの言語、エディタ、ビルド経路を整理する
- 誰に向いている?
- 教育向けにブロックとテキストを往復できる専用エディタを作りたい開発者に向きます。一般的なTypeScriptアプリのUI基盤として選ぶ資料ではありません。
- 商用利用できる?
- できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- されています。最後のコミットは 1 日前です。
- 何の言語で書かれている?
- 主に TypeScript です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月18日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
MakeCodeとPXTを分けて理解する
READMEはユーザー向けエディタの名称をMicrosoft MakeCode、GitHubソースで使う名称をPXTと説明しています。PXTは初心者、とくにコンピュータサイエンス教育向けの専用プログラミング体験を作るフレームワークです。基礎言語はTypeScriptのサブセットで、JavaScriptの動的機能は含めないとされています。 PXTのターゲットとして確認します。
この名称の違いを無視すると、Web上のMakeCodeエディタとソースリポジトリの役割を取り違えます。READMEが説明するのは教育向けの編集体験であり、一般的なTypeScript互換実行環境ではありません。 PXTのターゲットとして確認します。
Blocklyからテキストへ変換する編集面
PXTの主な機能にはBlocklyベースのコードエディタと、ブロックをテキスト形式へ変換する機能があります。初心者は視覚的なブロックから入り、生成されたテキストを読む流れを取れます。変換が常に意図通りになるとはREADMEは述べていないため、対象ブロックの出力を教材単位で確認します。 PXTのターゲットとして確認します。
もう一つの編集面は、VS Codeを支えるMonacoエディタです。READMEはそのエディタ機能の詳細をVS Code文書へリンクしています。PXT固有の補完や診断の範囲は、実際のエディタと文書で確認します。 PXTのターゲットとして確認します。
ブロック拡張とARM出力
PXTにはTypeScriptで新しいブロックを定義する拡張機構があり、ARM Thumbのマシンコードエミッタも含まれます。ハードウェア向けの教育環境を作る際、ブロック定義、生成テキスト、対象機器用コードの三段階を意識できます。READMEは対応機器ごとの制約を一覧化していません。 PXTのターゲットとして確認します。
検証では新しいブロックを一つ定義し、Blockly表示、テキスト変換、コンパイル、実機または対象シミュレータの動作を順に比較します。ARM出力があるという事実だけで、任意のARM機器で動くとは判断しません。 PXTのターゲットとして確認します。
MakeCodeの実例とブランチ
READMEはmicro:bit、ArcadeなどMakeCodeで作られたエディタへのリンクを示しています。利用者は対象エディタの公開ページを試せます。ソース開発では各エディタがどのブランチやターゲットを使うかを確認し、PXT本体の変更を直接すべてのエディタへ適用できると考えないことが必要です。 PXTのターゲットとして確認します。
対象エディタのブランチ方針、アイコン、共有スタイル、ドキュメントのハイライトもREADMEの案内に含まれます。見た目だけを変更する場合でも、共有資産とターゲット固有の設定を分けてテストします。 PXTのターゲットとして確認します。
ソースからローカルで確かめる
READMEはソースからビルドしてローカルで実行する手順、ローカルのPXTをターゲットへリンクする手順、テストへの入口を案内しています。詳細なコマンド、Node.jsの版、依存関係はリンク先の文書に委ねられています。ここで未記載の手順を補って断定することはできません。 PXTのターゲットとして確認します。
開発者は対象ターゲットを選び、公式のビルド手順でローカルエディタを起動します。変更前後でブロックの読み込み、変換、コンパイル、サンプルの実行を確認し、ターゲットリンクの向き先を記録します。 PXTのターゲットとして確認します。
教育用途に絞った採用判断
PXTはブロック編集とTypeScriptサブセットを組み合わせた教育向け体験を作るための基盤です。初心者が段階的にコードへ進む教材や、機器と結び付いた専用エディタには合います。汎用Web IDE、完全なJavaScript実行、任意のマイコン対応をREADMEから期待することはできません。 PXTのターゲットとして確認します。
採用前にMicrosoft MakeCodeの対象エディタを一つ選び、ローカルビルドとサンプル変換を通します。出力コード、ARM Thumb生成物、テスト結果、利用するライセンス本文を確認できた範囲で導入範囲を決めます。 PXTのターゲットとして確認します。
一つのターゲットを選んで、ローカルPXTをリンクした状態と公開版を分けて起動します。独自ブロックの定義、Blockly画面、テキスト変換、Monaco上の編集、コンパイル結果を順に保存します。ARM Thumb出力が対象機器へ書き込めるか、シミュレータと実機の動作が一致するかを試し、共有スタイルやアイコンの変更で他ターゲットが壊れないかも確認します。教材として配布する場合は、学習者がブロックからコードへ進めるかを観察し、PXTを汎用IDEと誤解させる説明を避けます。 PXTのターゲットとして確認します。
テスト成果物にはターゲット名、PXTのコミット、生成されたブロック定義、テキストコード、ARM Thumbの出力を含めます。公開MakeCodeエディタで同じ教材を開いた場合とローカル版の表示を比べ、変換できないブロックや対象機器固有の設定を明記します。これにより、教育用の編集体験と低レベル出力のどこまでを自分たちが保守するか決められます。 PXTのターゲットとして確認します。
この確認では、使った版、入力、設定、実行日時、終了状態を一つの記録にまとめます。結果がREADMEの記述と一致しない場合は、環境差として具体的に残し、未確認の機能や数値を記事へ足しません。小さな再現を先に完成させてから、対象範囲を広げる判断ができます。 PXTのターゲットとして確認します。
編集部の結論
教育向けにブロックとテキストを往復できる専用エディタを作りたい開発者に向きます。一般的なTypeScriptアプリのUI基盤として選ぶ資料ではありません。まず対象エディタのブランチとローカルビルドを確認し、ブロック変換結果とARM出力を実際のターゲットで検証してください。
コミュニティノート