# Angie enables WebAssembly support

*29.11.2024*

The update enables building WASM modules for Angie to load and use them in
the server's configuration.

Angie Software presents a major update to the functionality of the Angie web
server: a number of modules that enable WebAssembly (WASM) support, along with a
dedicated SDK that allows building Angie-aware WASM modules using higher-level
abstractions.

This server-side implementation provide developers with two options:

- Develop WASM modules that can be invoked in the configuration at almost any
  [request processing stage](https://en.angie.software//angie/docs/configuration/processing.md#http-sessions), using their language of
  preference
- Develop and run Angie modules that make use of the server's newly minted WASM
  functionality

The three modules that enable WebAssembly support are:

- [WASM Core](https://en.angie.software//angie/docs/configuration/modules/wasm/index.md#wasm-core):
  Implements basic WASM functionality in Angie.
- [WAMR](https://en.angie.software//angie/docs/configuration/modules/wasm/wasm_wamr.md#wasm-wamr):
  Integrates with [WebAssembly Micro Runtime](https://github.com/bytecodealliance/wasm-micro-runtime).
- [Wasmtime](https://en.angie.software//angie/docs/configuration/modules/wasm/wasm_wasmtime.md#wasm-wasmtime):
  Integrates with [Wasmtime](https://wasmtime.dev/).

All three modules can be installed as [pre-built Angie packages](https://en.angie.software//angie/docs/installation/oss_packages.md#oss-packages). The documentation for the modules and their configuration
directives is available at [our website](https://en.angie.software//angie/docs/configuration/modules/index.md#modules-wasm).

The source code for the modules, the SDK, and examples that use all of these are
available in our repositories:

- [Angie WASM Modules](https://git.angie.software/web-server/angie-wasm/):
  Source code of the Angie modules that enable WASM code execution, along with a
  number of sample Angie modules that extend the server's WASM functionality.
- [Angie WASM SDK](https://git.angie.software/web-server/angie-wasm-sdk/):
  Provides interface definitions and libraries to build WASM modules for Angie
  with higher-level abstractions.
- [WASM Module Examples](https://git.angie.software/web-server/angie-wasm-examples/): Examples in C
  and Rust showcasing ways to write Angie-enabled WASM modules using the Angie
  WASM SDK.
