Skip to main content

Environment variables

Wasm Workers Server allows you to configure environment variables so a worker can read them. This configuration is done through the TOML file associated to a worker (a TOML file with the same filename as the worker). This means every worker has its own set of environment variables.

The following TOML config file adds a new JSON_MESSAGE environment variable:

name = "json"
version = "1"

[vars]
JSON_MESSAGE = "Hello 👋! This message comes from an environment variable"

Then, you can read them in your worker:

Inject existing environment variables​

You can inject existing environment variables from your current context. In this case, the value of the configured variable will be the name of the existing one with the $ prefix.

For example, let's configure the TOKEN variable for the previous worker. This variable will get its value from the TOKEN environment variable in the current context:

name = "json"
version = "1"

[vars]
JSON_MESSAGE = "Hello 👋! This message comes from an environment variable"
TOKEN = "$TOKEN"

This feature allows you to configure environment variables dynamically.

Language compatibility​

LanguageEnvironment variables
JavaScript✅
Rust✅
Go✅
Ruby✅
Python✅
Zig✅