This worker runs a CFML interpreter (RustCFML, compiled to WebAssembly) on Cloudflare's edge. The pages linked below each exercise a different slice of the integration: lazy session storage in Workers KV, Durable-Object-backed application scope, and synchronous-from-CFML SQL queries against Postgres or MySQL via Cloudflare Hyperdrive, bridged through JSPI.
Edge: · rendered at 2026-09-22 05:11:02
A page that never touches the session scope. With
this.lazySessionCreation = true the engine skips KV
inserts, skips onSessionStart, and skips
Set-Cookie entirely.
Asks for your name on first visit and greets you back on
subsequent ones. The form submission writes session.greetName,
which triggers lazy-init: KV record created, onSessionStart
fires, cookie issued. Anonymous visits stay zero-cost.
Quick rendering of the same examples shown in the wasm playground: variables, arrays with higher-order functions, structs, closures, fibonacci, fizzbuzz. All running server-side.
Open /cfml.cfm →An always-on HTTP echo service the RustCFML engine test-suite hits
in place of the flaky httpbin.org. Mirrors the request as
JSON, reflects headers, and returns arbitrary status codes — all from
the edge.
Runs a tiny SELECT through Hyperdrive (Postgres or
MySQL) using the synchronous <cfquery> tag. The
async driver is bridged via JSPI, so CFML code stays sequential.
Application scope is stored in a single Durable Object instance per application name. All isolates and regions see the same value, so the counter below increments monotonically regardless of which edge node serves you.