- 1. Introduction
- 2. Using the Wasmtime CLI
- 2.1. Installation
- 2.2. CLI Options
- 2.3. CLI Logging
- 2.4. Cache Configuration
- 3. Using the Wasmtime API
- 3.1. Rust
- 3.1.1. Hello, world!
- 3.1.2. Calculating the GCD
- 3.1.3. Using Linear Memory
- 3.1.4. WASI
- 3.1.5. Linking Modules
- 3.1.6. Debugging
- 3.1.7. Core Dumps
- 3.1.8. Using Multi-Value
- 3.2. C
- 3.2.1. Hello, World!
- 3.2.2. Calculating the GCD
- 3.2.3. Using Linear Memory
- 3.2.4. WASI
- 3.2.5. Linking Modules
- 3.2.6. Debugging
- 3.2.7. Using Multi-Value
- 3.3. Python
- 3.4. .NET
- 3.5. Go
- 3.6. Bash
- 3.7. Ruby
- 3.8. Elixir
- 4. Further Examples
- 4.1. Debugging WebAssembly
- 4.1.1. Debugging with gdb and lldb
- 4.1.2. Debugging with Core Dumps
- 4.2. Profiling WebAssembly
- 4.2.1. Profiling with Perf
- 4.2.2. Profiling with VTune
- 4.2.3. Profiling with samply
- 4.2.4. Cross-platform Profiling
- 4.3. Building a Minimal Embedding
- 4.4. Portable Interpretation
- 4.5. Pre-Compiling Wasm
- 4.6. Fast Execution
- 4.7. Fast Instantiation
- 4.8. Fast Compilation
- 4.9. Interrupting Execution
- 4.10. Deterministic Execution
- 4.11. Checking Guests' Memory Accesses
- 5. Stability
- 5.1. Release Process
- 5.2. Tiers of support
- 5.3. Platform Support
- 5.4. Wasm Proposals
- 6. Security
- 6.1. Disclosure Policy
- 6.2. What is considered a security bug?
- 6.3. Vulnerability runbook
- 7. Contributing
- 7.1. Architecture
- 7.2. Building
- 7.3. Testing
- 7.4. Fuzzing
- 7.5. CI
- 7.6. Reducing Test Cases
- 7.7. Cross Compiling
- 7.8. Coding Guidelines
- 7.9. Development Process
- 7.10. Implementing Wasm Proposals
- 7.11. Maintainer Guidelines
- 7.11.1. Code Review
- 7.11.2. Release Process
- 7.12. Conditional Compilation
- 7.13. Governance
- 7.14. Code of Conduct