LinuxCommandLibrary

wapm

Manage WebAssembly packages

TLDR

Interactively create a new wapm.toml file

$ wapm init
copy

Download all the packages listed as dependencies in wapm.toml
$ wapm install
copy

Download a specific version of a package and add it to the list of dependencies in wapm.toml
$ wapm install [package]@[version]
copy

Download a package and install it globally
$ wapm install --global [package]
copy

Uninstall a package and remove it from the list of dependencies in wapm.toml
$ wapm uninstall [package]
copy

Print a tree of locally installed dependencies
$ wapm list
copy

List top-level globally installed packages
$ wapm list --global
copy

Execute a package command using the Wasmer runtime
$ wapm run [command_name] [arguments]
copy

SYNOPSIS

wapm [options]

PARAMETERS

install
    Installs a WebAssembly package from the wapm.io registry.

run
    Runs a WebAssembly executable.

publish
    Publishes a WebAssembly package to the wapm.io registry.

unpublish
    Unpublishes a WebAssembly package from the wapm.io registry. (Requires ownership)

login
    Authenticates with the wapm.io registry.

logout
    Logs out from the wapm.io registry.

search
    Searches the wapm.io registry for packages.

info
    Retrieves information about a specific WebAssembly package.

whoami
    Displays the currently logged-in user.

completion
    Generates shell completion scripts.

help
    Displays help information about wapm or a specific command.

--version
    Displays the wapm version.

DESCRIPTION

wapm is the command-line interface (CLI) for the WebAssembly Package Manager. It allows users to discover, install, and run WebAssembly packages from the wapm.io registry. WebAssembly is a portable binary format that enables near-native performance on the web and other platforms. wapm aims to provide a simple and consistent way to manage WebAssembly applications and libraries across different environments.

Using wapm, developers can easily share and reuse WebAssembly modules, simplifying the development process and fostering a vibrant ecosystem. The CLI handles dependency resolution, installation, and execution of WebAssembly packages, abstracting away the complexities of the underlying WebAssembly runtime. It supports various package formats and allows developers to create and publish their own WebAssembly packages to the wapm.io registry.

PACKAGE MANIFEST

WebAssembly packages use a manifest file (wapm.toml) to describe the package metadata, dependencies, and entry points. This manifest is essential for wapm to understand how to install and run the package correctly.

GLOBAL PACKAGES

wapm can install packages globally, making them accessible from any directory. This is useful for tools and utilities that need to be available system-wide.

SECURITY

wapm emphasizes security by verifying package integrity and providing sandboxed execution environments for WebAssembly modules. This helps prevent malicious code from compromising the user's system.

HISTORY

wapm was initially developed as a command-line interface for the WebAssembly Package Manager, aiming to simplify the distribution and execution of WebAssembly modules. Its development was driven by the need for a centralized registry and a streamlined process for managing WebAssembly packages. Over time, wapm has evolved to support various features, including package publishing, versioning, dependency resolution, and secure execution environments. It has played a key role in fostering a community around WebAssembly and enabling the adoption of WebAssembly beyond the web.

SEE ALSO

wasm(1)

Copied to clipboard