0

wasmerio/wasmer

View on GitHub

πŸš€ Fast, secure, lightweight containers based on WebAssembly

21,0031,001RustemscriptenlinuxmacosrustwasiwasixwasmwasmerwebassemblywindowsUpdated 1d ago
README

Wasmer is a blazing fast and secure WebAssembly runtime that enables incredibly lightweight containers to run anywhere: from Desktop to the Cloud, Edge and your browser.

  • Secure by default. No file, network, or environment access, unless explicitly enabled.
  • Pluggable. supports WASIX, WASI out of the box.
  • Incredibly Fast. Run WebAssembly at near-native speeds.
  • Embeddable anywhere via Wasmer SDKs

Install Wasmer

curl https://get.wasmer.io -sSfL | sh

Wasmer can be installed from various package managers. Choose the one that fits best for your environment:

  • Powershell (Windows)
    iwr https://win.wasmer.io -useb | iex
    
  • Homebrew (macOS, Linux)

    brew install wasmer
    
  • Scoop (Windows)

    scoop install wasmer
    
  • Chocolatey (Windows)

    choco install wasmer
    
  • Cargo binstall

    cargo binstall wasmer-cli
    
  • Cargo

    Note: All the available features are described in the wasmer-cli crate docs

    cargo install wasmer-cli
    

Looking for more installation options? See the wasmer-install repository to learn more!

Note: You can also try Wasmer online in wasmer.sh

Quickstart

[!Tip]
As part of our commitment to open source, we want to reward all GitHub users. In addition to the free tier, you can get up to $200 in Wasmer Edge credits for your open-source contributions - Claim here.

You can start by running Cowsay:

$ wasmer run cowsay "hello world"
 _____________
< hello world >
 -------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
               ||----w |
                ||     ||

There are many more available packages, such as wasmer/python or quickjs. Create your own package, or explore packages from the community: https://wasmer.io/explore

Here is what you can do next:

Wasmer SDK

You can use the Wasmer runtime embedded in different languages with the Wasmer SDK:

| | Language | Package | Documentation | | ---------------- | ------------------------------------ | ------------------------------------- | ---------------------- | | Rust logo | Rust | wasmer Rust crate | Learn | | C logo | C | wasm.h header | Learn | | C++ logo | C++ | wasm.hh header | Learn | | C# logo | C# | WasmerSharp NuGet package | Learn | | D logo | D | wasmer Dub package | Learn | | Zig logo | Zig | wasmer Zig package | Learn | | Python logo | Python | wasmer PyPI package | Learn | | JS logo | Javascript | @wasmerio NPM packages | Learn | | Go logo | Go | wasmer Go package | Learn | | PHP logo | PHP | wasm PECL package | Learn | | Ruby logo | Ruby | wasmer Ruby Gem | Learn | | Java logo | Java | wasmer/wasmer-jni Bintray package | Learn | | R logo | R | no published package | Learn | | R logo | R | no published package | Learn | | Postgres logo | Postgres | no published package | Learn | | Swift logo | Swift | no published package | | | Dart logo | Dart | wasm pub package | | | Crystal logo | Crystal | no published package | Learn | | Lisp logo | Lisp | no published package | | | Julia logo | Julia | no published package | | | VLang logo | V | no published package | | | Ocaml logo | OCaml | wasmer OCaml package | |

πŸ‘‹Β Β Missing a language?

Develop

We have different guides to help you develop Wasmer:

Contribute

We appreciate your help! πŸ’œ

We recommend reading the following guide on how to contribute into a complex project successfully: https://mitchellh.com/writing/contributing-to-complex-projects

Check our docs on how to build Wasmer from source or test your changes.

Community

Wasmer has an amazing community of developers and contributors. Welcome, please join us! πŸ‘‹


README also in: πŸ‡¨πŸ‡³ δΈ­ ζ–‡ -Chinese β€’ πŸ‡©πŸ‡ͺ Deutsch-German β€’ πŸ‡ͺπŸ‡Έ EspaΓ±ol-Spanish β€’ πŸ‡«πŸ‡· FranΓ§ais-French β€’ πŸ‡―πŸ‡΅ ζ—₯本 θͺž -Japanese β€’ πŸ‡°πŸ‡· ν•œκ΅­μ–΄ -Korean.

Comments0

No comments yet. Set the tone β€” say what you would want to know.