TL;DR
JavaScript から WebAssembly Component を利用するためのコードを生成するツール。Bytecode Alliance が開発している。
仕組み
README によると、jco は JavaScript の WebAssembly エコシステム向けの多機能ツールを目指している。主に次のことができる。
- WIT のワールドから、JavaScript や TypeScript のコンポーネントのプロジェクトを作る(
jco scaffold) - JavaScript や TypeScript から Component をビルドする
- Component を、Node.js やブラウザで動く ES モジュールに変換する(トランスパイル)
- Component を単発のアプリケーションや Web サーバーとして実行する
- wasm-tools を JavaScript のライブラリとして使う
例
組み込みの WASI のワールドからプロジェクトを作ってビルドする例は、次のとおりである。
pnpm install @bytecodealliance/jco
pnpm exec jco scaffold my-command --wit builtin:wasi-command
cd my-command
pnpm install
pnpm build