Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile components without JS runtime #193

Open
sandstrom opened this issue Feb 24, 2025 · 0 comments
Open

Compile components without JS runtime #193

sandstrom opened this issue Feb 24, 2025 · 0 comments

Comments

@sandstrom
Copy link

sandstrom commented Feb 24, 2025

For certain scenarios, it would be great if we could create WebAssembly Components from ESM with this library without requiring a JS runtime.

In the scenario where a backend service written in Python or Ruby would like to take an input string of Javascript, precompile a wasm component, and then run it using a Wasmtime host for Python/Ruby, needing a full JS runtime to do the compilation might complicate things in that Python or Ruby backend.

With the current trend that a lot of JS tooling is also available in Rust (Biome, Oxc, Rolldown, etc), would it be possible to see this project as a two-layer library.

The lower layer is implemented in Rust (maybe using existing ecosystem tools where available) to bundle and compile the JS code into a WebAssembly Component, and the higher level would be bindings to the lower level.

Those bindings might be JS, which would give the end result of this project (lower layer + higher level), but those bindings might also be written in Python or Ruby, to pair with e.g. Wasmtime-Py or Wasmtime-Rb.

Let me know if I should elaborate!

Also, I know this is more of a discussions item, but the discussions tab isn't enabled on the repo so I opened it here.

Thoughts?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant