Dev tools · alternatives · 2026
24 alternatives to A library for `exec`ing Python code safely using WASM
Inspired by Simon Willison's blog post that was catalyzed by this HN post: https://news.ycombinator.com/item?id=34598024 wasm_exec is a Wasm-powered, sandboxed implementation of exec() for safely running dynamic Python code There are number of use-cases emerging that require arbitrary code execution, often code that is generated by LLMs (Large Language Models) like ChatGPT. This can enable some really cool functionality - like generative BI or website generation - but also introduce a massive security flaw if implemented via eval() or exec(). This is because arbitrary code can…
Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. A library for `exec`ing Python code safely using WASM launched in 2023; newer entries below may have overtaken it.
- 1

A while ago I started experimenting with compiling the Python interpreter to WASM. To build a secure, fast, and lightweight sandbox for code execution — ideal for running LLM-generated Python code.
2024 · github.com · its alternatives →
- 2

I've open sourced a JavaScript to WASM compiler. It's an experimental tool, but given the semantics I already implemented, I'm fairly certain I am able to eventually cover 100% of JavaScript spec. Any ideas, questions or critique welcomed! If you are interested in WASM, especially with new proposals like WASM GC or exception handling, it might be a good source of seeing these features in action - the project has a few thousand lines of hand written WAT so far.
2024 · github.com · its alternatives →
- 3

This is a pet project of mine where I build a MCP with WASM plugin system (published to OCI). I added a new plugin today that use Rust, compiled to WebAssembly to run Python code securely.
2025 · github.com · its alternatives →
- 4

Hi everyone, I built a runtime to isolate untrusted code using wasm sandboxes. Basically, it protects your host system from problems that untrusted code can cause. We’ve had a great discussion about sandboxing in Python lately that elaborates a bit more on the problem [1]. In TypeScript, wasm integration is even more natural thanks to the close proximity between both ecosystems. The core is built in Rust. On top of that, I use WASI 0.2 via wasmtime and the component model, along with custom SDKs that keep things as idiomatic as possible. For example, in Python we have a simple decorator:…
Feb 2026 · github.com · its alternatives →
- 5

This is a Python package that allows you to write function signatures to define LLM queries. This makes it easy to mix regular code with calls to LLMs, which enables you to use the LLM for its creativity and reasoning while also enforcing structure/logic as necessary. LLM output is parsed for you according to the return type annotation of the function, including complex return types such as streaming an array of structured objects. I built this to show that we can think about using LLMs more fluidly than just chains and chats, i.e. more interchangeably with regular code, and to make it…
2023 · github.com · its alternatives →
- 6OA
A lightweight engine for durable execution / deterministic workflows I built with Rust, wasmtime and the WASM Component Model. Its main use is running reliable, long-running workflows that can automatically resume after failures. Looking for feedback on the approach and potential use cases!
2025 · obeli.sk · its alternatives →
- 7CF
2015 · docker-exec.github.io · its alternatives →
- 8

I'm Gary Bernhardt, founder of Execute Program, an interactive platform for learning programming languages and other programming tools. Our "Python for Programmers" course is in a free open beta for the next week or so. We don't normally do open betas, but the infrastructure behind this course is new and very complex, so we want to stress test it. https://www.executeprogram.com/courses/python-for-programmer... Today, "Python for Programmers" contains 581 interactive code examples covering the core language. It's aimed at established programmers, not beginners. We don't…
2023 · executeprogram.com · its alternatives →
- 9

Linux virtual machine, running in the browser via HTML5/WebAssembly. Networking and graphics supported.
2021 · repl.leaningtech.com · its alternatives →
- 10

Hi HN! We’re Adrien and Kanav. We met at our previous job, where we spent about a third of our lives combating a constant firehose of bugs. In the hope of reducing this pain for others in the future, we’re working on automating debugging. We’re currently working on a platform that ingests logs and then automatically reproduces, root causes and ultimately fixes production bugs as they happen. You can see some of our work on this here - https://news.ycombinator.com/item?id=39528087 As we were building the root-cause phase of our automated debugger, we realized that we developed…
2024 · github.com · its alternatives →
- 11WW
2020 · blog.yifangu.com · its alternatives →
- 12

AST-based fragmental source code refactoring toolkit for Python - isidentical/refactor
2021 · github.com · its alternatives →
- 13

Hello! This is the most useless thing I did in quite some time, but it was fun. Compile erlang (actually BEAM) to wasm, statically link with a small http wrapper and run as a request handler under wasmtime. This is not very practical as of now and you better just compile atomvm and statically link it with erlang payload if you really need to run erlang on the edge node (you don't). When (if) typed continuations become a thing, this should also allow for erlang actor model.
2024 · github.com · its alternatives →
- 14

org-babel integration with Jupyter for evaluation of (Python by default) code blocks - gregsexton/ob-ipython
2015 · github.com · its alternatives →
- 15

- 16

Hi Hacker News! We’re Vadim and Chris from Highlight.io [1]. We do web app monitoring and are working on using LLMs/embeddings to add new functionality to our error monitoring product. Given that there’s a lot of founders/engineers using LLMs in their products, we figured we’d share how we built the new functionality, their impact on our workflows, and how you can try it out. Our goal was to build two features: (1) tagging errors (e.g. deeming an error as “authentication error” or a “database error”); and (2) grouping similar errors together (e.g. two errors that have a different…
2023 · github.com · its alternatives →
- 17

I make a no-CGO Go SQLite driver, by compiling the amalgamation to Wasm, then loading the result with wazero (a CGO-free Wasm runtime). To compile SQLite, I use wasi-sdk, which uses wasi-libc, which is based on musl. It's been said that musl is slow(er than glibc), which is true, to a point. musl uses SWAR on a size_t to implement various functions in string.h. This is fine, except size_t is just 32-bit on Wasm. I found that implementing a few of those functions with Wasm SIMD128 can make them go around 4x faster. Other functions don't even use SWAR; redoing those can make them 16x faster.…
2025 · github.com · its alternatives →
- 18

As a personal project I wrote a really tiny Wat 2 Wasm compiler in Go. Mainly for demonstrative and educational purposes. It was tough: I didn't know anything about WebAssembly internals and I'm a newbie with Go... so I tried to document it as much as I could for anyone that would like to approach the quest in the future! It misses a lot of features (that will be gradually implemented). Any feedback is welcomed!! Demo: https://luna-demo.vercel.app
2022 · github.com · its alternatives →
- 19

- 20

Recently, I write an interpreter for subset of Python using Go. I haven't seen source code of CPython, all is just written according to my understanding of Python so there may be some unusual things. Hope you can play fun with it. Any suggestion is welcome, glad to get some feedback.
2023 · github.com · its alternatives →
- 21

🐹🕸️ WebAssembly runtime for Go. Contribute to wasmerio/wasmer-go development by creating an account on GitHub.
2019 · github.com · its alternatives →
- 22

- 23

A WebAssembly runtime embedded in Godot game engine projects. Interact with Wasm modules from GDScript. Accessing Wasm modules via GDScript provides the following benefits. - Sandboxed environment allows safely loading zero-trust mods/extensions to a project. - Single target means that Wasm modules can be built from any language e.g. Rust, Go, AssemblyScript and the single binary can be run on all platforms. - Fast execution compared to GDScript allows for offloading compute-heavy operations or running bots/mods/etc. at high FPS. This might be useful for loading mods, bot AI,…
2023 · github.com · its alternatives →
- 24

I am super excited to open-source the code executor behind logicboard.com - an in-browser collaborative code editor. The backend is written in Elixir+Phoenix and implements a WebSocket API to execute code in docker containers. Next steps include making this more secure, I am considering Google's gVisor to implement better isolation between containers and the host kernel.
2023 · github.com · its alternatives →
Also compare
- WASM runtime for sandboxing Python code alternatives
- Jaws – a JavaScript to WASM ahead-of-time compiler alternatives
- A MCP server to evaluate Python code in WASM VM using RustPython alternatives
- Sandboxing untrusted code using WebAssembly alternatives
- Magentic – Use LLMs as simple Python functions alternatives
- Obelisk – a WASM-based deterministic workflow engine alternatives
Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →