Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 17 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,39 @@
<div align="center">
<h1><code>jco</code></h1>

<p>
<strong>JavaScript component toolchain for working with <a href="https://github.com/WebAssembly/component-model">WebAssembly Components</a></strong>
</p>
# `jco`

<strong>A <a href="https://bytecodealliance.org/">Bytecode Alliance</a> project</strong>
**JavaScript tooling for working with [WebAssembly Components](https://github.com/WebAssembly/component-model)**

<p>
<a href="https://github.com/bytecodealliance/jco/actions?query=workflow%3ACI"><img src="https://github.com/bytecodealliance/jco/workflows/CI/badge.svg" alt="build status" /></a>
</p>
**A [Bytecode Alliance](https://bytecodealliance.org/) project**

[![build status](https://github.com/bytecodealliance/jco/workflows/CI/badge.svg)](https://github.com/bytecodealliance/jco/actions?query=workflow%3ACI)
</div>

## Overview

`jco` is a fully native JS tool for working with the emerging [WebAssembly Components](https://github.com/WebAssembly/component-model) specification in JavaScript.
`jco` is a fully native JavaScript tool for working with the emerging [WebAssembly Components](https://github.com/WebAssembly/component-model) specification.

`jco` can convert code between JS and a Wasm component:

* "Transpile" a Wasm component binary into an ES module that can run in any JS environment.
* "Componentize" JS code and a WIT world into a Wasm component.

Features include:
`jco` also includes:

* "Transpiling" Wasm Component binaries into ES modules that can run in any JS environment.
* Optimization helpers for Components via Binaryen.
* Component builds of [Wasm Tools](https://github.com/bytecodealliance/wasm-tools) helpers, available for use as a library or CLI commands for use in native JS environments.
* "Componentize" for WebAssembly Components from JavaScript sources and a WIT world
* Optimization helpers for components via [Binaryen](https://github.com/WebAssembly/binaryen).
* Component builds of [Wasm Tools](https://github.com/bytecodealliance/wasm-tools) helpers, available in native JS environments for use as a library or via CLI commands.

For creating components in other languages, see the [Cargo Component](https://github.com/bytecodealliance/cargo-Component) project for Rust and [Wit Bindgen](https://github.com/bytecodealliance/wit-bindgen) for various guest bindgen helpers.
For creating components in other languages, see [`cargo component`](https://github.com/bytecodealliance/cargo-component) (for Rust) and [Wit Bindgen](https://github.com/bytecodealliance/wit-bindgen) for various guest language bindings generators.

> **Note**: This is an experimental project, no guarantees are provided for stability or support and breaking changes may be made in future.
> **Note**: This is an experimental project. No guarantees are provided for stability, security or support and breaking changes may be made without notice.

## Installation

```shell
npm install @bytecodealliance/jco
```

jco can be used as either a library or as a CLI via the `jco` CLI command.
`jco` can be used either as a library or via the `jco` CLI command.

## Example

Expand Down