Skip to main content

c2pa-wasm

The WebAssembly wrapper for c2pa-rs that powers c2pa-web, built with wasm-bindgen. While these bindings can be used directly, most users will prefer the convenience of c2pa-web.

Installation

npm install @contentauth/c2pa-wasm

Development

Prerequsities

Ensure the repo-wide prerequisites NX and pnpm are installed.

Then, all of the following prerequisites must be installed before c2pa-wasm can be built:

Rust

Installation instructions

Minimum supported Rust version: 1.86.0.

Additionally, the wasm32-unknown-unknown target must be installed:

rustup target add wasm32-unknown-unknown

wasm-bindgen-cli

Documentation

cargo install wasm-bindgen-cli@0.2.105

wasm-pack

Documentation

cargo install wasm-pack@0.13.1

Building

To build the library:

nx build c2pa-wasm

This will execute the commands defined in the nx-wasm-bindgen executor to produce the final output in the pkg/ directory.

Testing

The library relies on wasm-pack to run its tests. As a general principle, the majority of test coverage will come from c2pa-web's test suite.

To run the tests:

nx test c2pa-wasm