Playground

Validate configurations, simulate requests, and visualize how Zentinel routes traffic

Choose a template to get started, or write your own configuration below

Configuration

Loading...

Request

No agents detected in configuration

Add agents and filters blocks to your config to simulate agent decisions

Request & Response Flow

Request Flow

Click "Simulate Request" to see the routing flow

Response Flow

Response flow will appear here

Detailed Trace

Simulation results will appear here

Powered by Rust + WebAssembly

Real Engine, Real Results

This isn't a simulation — it's the actual Zentinel routing engine compiled to WebAssembly and running directly in your browser. The same Rust code that powers production proxies is executing here: config parsing, route matching, load balancer selection, and policy evaluation.

Because Zentinel is written in Rust, we can compile the core engine to WASM with zero compromises — giving you an accurate, interactive preview of exactly how your configuration will behave.

Run Locally

Take the same engine home. Run configs locally with any WASI-compatible runtime.

Run with Wasmtime:

# Install wasmtime
curl https://wasmtime.dev/install.sh -sSf | bash

# Validate a config file
wasmtime zentinel_playground.wasm validate config.kdl

# Simulate a request
wasmtime zentinel_playground.wasm simulate config.kdl \
  --method GET --path /api/users --host example.com
Also works with:Wasmer·wazero·Node.js