experimental javascript runner

Run the same script on wildly different engines.

o- is a tiny multi-engine JavaScript runner with a shared bootstrap layer. It lets you compare SpiderMonkey, JavaScriptCore, and V8 behind one interface without flattening everything into the same boring developer experience.

One script, multiple enginesShared jstd bootstrapColor-formatted runtime errorsDocs-first developer flow
$ o- run index.js
12586269025

$ cat ~/.config/o-/toolchain
v8

$ o- toolchain add spidermonkey
$ o- toolchain add javascriptcore

Execution Error: JavaScript exception is pending
--> index.js
 | console.log(fib(50))

SpiderMonkey

backend

fast bootstrap, unstable teardown

JavaScriptCore

backend

clean host callbacks, shared jstd surface

V8

backend

stable default runner, fresh isolate per run