Wasmtime 17.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Wasmtime --version 17.0.0                
NuGet\Install-Package Wasmtime -Version 17.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Wasmtime" Version="17.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Wasmtime --version 17.0.0                
#r "nuget: Wasmtime, 17.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Wasmtime as a Cake Addin
#addin nuget:?package=Wasmtime&version=17.0.0

// Install Wasmtime as a Cake Tool
#tool nuget:?package=Wasmtime&version=17.0.0                

Installation

You can add a package reference with the .NET SDK:

$ dotnet add package wasmtime

Introduction

For this introduction, we'll be using a simple WebAssembly module that imports a hello function and exports a run function:

(module
  (func $hello (import "" "hello"))
  (func (export "run") (call $hello))
)

To use this module from .NET, create a new console project:

$ mkdir wasmintro
$ cd wasmintro
$ dotnet new console

Next, add a reference to the Wasmtime package:

$ dotnet add package wasmtime

Replace the contents of Program.cs with the following code:

using System;
using Wasmtime;

using var engine = new Engine();

using var module = Module.FromText(
    engine,
    "hello",
    "(module (func $hello (import \"\" \"hello\")) (func (export \"run\") (call $hello)))"
);

using var linker = new Linker(engine);
using var store = new Store(engine);

linker.Define(
    "",
    "hello",
    Function.FromCallback(store, () => Console.WriteLine("Hello from C#!"))
);

var instance = linker.Instantiate(store, module);
var run = instance.GetAction("run")!;
run();

An Engine is created and then a WebAssembly module is loaded from a string in WebAssembly text format.

A Linker defines a function called hello that simply prints a hello message.

The module is instantiated and the instance's run export is invoked.

To run the application, simply use dotnet:

$ dotnet run

This should print Hello from C#!.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETStandard 2.0

  • .NETStandard 2.1

    • No dependencies.
  • net7.0

    • No dependencies.

NuGet packages (11)

Showing the top 5 NuGet packages that depend on Wasmtime:

Package Downloads
Opa.Wasm

Call Open Policy Agent (OPA) policies in WASM (Web Assembly) from .NET

DevCycle.SDK.Server.Local

.NET Server Local Bucketing SDK for DevCycle

OpaDotNet.Wasm

Open Policy Agent (OPA) WebAssembly dotnet core SDK

Deislabs.WAGI

Provides a configuration driven method to add WAGI modules as route endpoints to ASP.Net Core applications using WAGI.WARNING: WAGI is experimental. It is not considered production-grade by its developers, neither is it "supported" software..

DOPA

A .NET API for evaluating OPA policies compiled as WebAssembly modules.

GitHub repositories (5)

Showing the top 5 popular GitHub repositories that depend on Wasmtime:

Repository Stars
betwixt-labs/bebop
🎷No ceremony, just code. Blazing fast, typesafe binary serialization.
PixiEditor/PixiEditor
PixiEditor is a pixel art editor made with .NET 8
SteveSandersonMS/DotNetIsolator
A library for running isolated .NET runtimes inside .NET
JasonBock/Rocks
A mocking library based on the Compiler APIs (Roslyn + Mocks)
bytecodealliance/wasmtime-demos
Historical and dated demos for Wasmtime usage and WASI content
Version Downloads Last updated
22.0.0 6,510 7/9/2024
21.0.1 574 6/29/2024
20.0.2 158 6/28/2024
19.0.1 8,134 4/7/2024
19.0.0 1,208 3/27/2024
18.0.0 191 3/27/2024
17.0.0 11,589 1/26/2024
16.0.0 4,582 1/2/2024
15.0.0 902 11/21/2023
14.0.0 57,650 10/24/2023
13.0.0 1,906 9/22/2023
12.0.2 230 9/21/2023
12.0.1 206 9/21/2023
12.0.0 2,843 8/21/2023
11.0.2 218 9/22/2023
11.0.1 78,344 7/27/2023
11.0.0 244 7/27/2023
10.0.2 194 9/22/2023
10.0.1 212 9/22/2023
10.0.0 1,170 7/5/2023
9.0.3 681 6/2/2023
9.0.2 1,483 5/30/2023
9.0.1 27,865 5/22/2023
9.0.0 257 5/22/2023
8.0.1 3,854 4/27/2023
8.0.0 755 4/21/2023
7.0.1 310 4/27/2023
7.0.0 1,014 4/1/2023
6.0.2 331 4/27/2023
6.0.1 1,824 3/8/2023
6.0.0 908 2/27/2023
5.0.1 651 3/8/2023
5.0.0 66,729 1/25/2023
4.0.1 416 3/8/2023
4.0.0 533 1/25/2023
3.0.0 34,303 12/8/2022
2.0.2 949 11/10/2022
2.0.1 668 11/9/2022
2.0.0 471 11/9/2022
1.0.2 530 11/11/2022
1.0.1 488 11/9/2022
1.0.0 2,189 9/26/2022
0.40.0-preview1 2,731 8/29/2022
0.39.1-preview2 2,915 8/11/2022
0.39.1-preview1 218 8/10/2022
0.39.0-preview1 220 8/10/2022
0.38.1-preview1 1,836 6/29/2022
0.38.0-preview1 236 6/29/2022
0.37.0-preview1 925 6/14/2022
0.36.0-preview1 863 4/26/2022
0.35.2-preview1 1,752 4/5/2022
0.35.1-preview1 237 4/5/2022
0.35.0-preview1 525 3/9/2022
0.34.0-preview1 19,408 2/11/2022
0.33.0-preview2 18,028 1/25/2022
0.33.0-preview1 671 1/7/2022
0.32.1-preview1 255 1/7/2022
0.32.0-preview1 548 12/18/2021
0.31.0-preview1 7,839 11/1/2021
0.30.0-preview1 6,752 9/17/2021
0.29.0-preview1 825 8/6/2021
0.28.0-preview1 50,613 6/15/2021
0.27.0-preview1 1,097 5/22/2021
0.26.1-preview1 280 5/21/2021
0.26.0-preview1 774 4/20/2021
0.25.0-preview1 1,157 3/18/2021
0.24.0-preview1 361 3/18/2021
0.23.0-preview1 545 2/19/2021
0.22.1-preview1 2,338 1/19/2021
0.22.0-preview1 438 1/19/2021
0.21.0-preview1 616 1/14/2021
0.20.0-preview1 1,567 11/2/2020
0.19.0-preview1 1,723 7/24/2020
0.18.1-preview1 964 7/1/2020
0.18.0-preview1 611 6/30/2020
0.15.0-preview1 1,089 4/6/2020
0.12.0-preview1 886 2/26/2020
0.8.0-preview2 692 12/5/2019
0.8.0-preview1 532 11/23/2019
0.0.1-alpha1 547 10/2/2019

Update Wasmtime to 17.0.0.