Welcome to the Swam website
WebAssembly implementation in Scala with cats.
This project defines several modules:
coremodule is a library that makes it possible to manipulate binary representation of WebAssembly modules. In particular it contains:
- a streaming parser for the binary format;
- a compiler from text to binary format.
runtimemodule is a non-web embedding to instantiate and run WebAssembly modules.
textmodule is a library that makes it possible to manipulate text representation of WebAssembly modules.
It is not included in the
coremodule as text representation is more of a debug feature, and the runtime does not want to bring
that dependency with it.
wasimodule contains the library implementing WASI on top of cats-effect that can be imported by modules run within Swam.
climodule contains a CLI tool that allows to run the tools offered by Swam from the command line.
If you want more details, please refer to the CLI documentation, the examples, or the API documentation.
Artefacts are published on maven, use your favorite build tool to bring it into your project: