Rust-inspired scripting for portable runtimes

The script for any Rust projects.

Lightweight, portable, predictable, debuggable.

proxy.rss

Design ideas

Small language, explicit runtime boundary.

RustScript keeps scripts readable for Rust users while making host integration clear. Scripts describe control flow and data movement; hosts own privileged operations through registered bindings.

Typed by default

Use explicit signatures and predictable values when scripts cross process, VM, WASM, or host boundaries.

Portable VM core

Compile to compact bytecode that can be embedded in services, UI apps, games, and edge agents.

Host-controlled power

Expose only the functions the host chooses. Scripts remain focused on policy, glue, and application logic.

Cooperative scheduling and yielding

Fuel bounds VM work, Epoch gives hosts wall-clock deadlines, and async host calls can yield or wait at explicit boundaries.

JIT and AOT

Start quickly in the interpreter, trace hot paths through the JIT, or precompile whole programs to skip runtime JIT.

No garbage collector

Rust-style ownership, borrows, and moves keep lifetimes visible to the compiler; shared values release through normal Drop without tracing GC.

Use cases

Where RustScript fits.

01

Programmable edge

Run routing, filtering, and request policy logic through pd-edge and pd-controller.

02

Game behavior

Embed scriptable gameplay rules inside Bevy while keeping the core engine in Rust.

03

Gateway scripting

Define dynamic policies without rebuilding or reloading the proxy.

04

Embedded scripting

Ship VM bytecode to microcontrollers with micro-rustscript.

Links

Project ecosystem.

Examples

Embedding references.