nowfound

Work · alternatives · 2026

24 alternatives to Wrote a tiny WebAssembly (wat2wasm) compiler in Go

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

This is a minimal WebAssembly compiler written in Go that converts WebAssembly text format (WAT) to binary format (WASM). Built as an educational project, it's designed to help developers understand WebAssembly… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Wrote a tiny WebAssembly (wat2wasm) compiler in Go launched in 2022; newer entries below may have overtaken it.

  1. 1

    Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM. - tinygo-org/tinygo

    2018 · github.com · its alternatives →

  2. 2AT

    Hello, I'm building a WebAssembly compiler and documenting the process in the meantime. This aims to be a tool for demonstration and education purpose. It doesn't aim to do fancy stuff nor to replace existing ones. I'm building this to learn and to improve and hopefully it can be useful for others as well :) From last time I've presented the idea, I've implemented more basic features on Luna and I've built a custom and tiny runtime for Luna! (documenting it of course). Any feedback is really appreciated :) Repo: https://github.com/thomscoder/luna

    2022 · luna-demo.vercel.app · its alternatives →

  3. 3

    Show HN: TinyWasm - A tiny WebAssembly Runtime written in Rust Hi HN! I'm excited to share TinyWasm (https://github.com/explodingcamera/tinywasm), a WebAssembly Interpreter I developed for my final university project. The main goal of this project was to deepen my understanding of WebAssembly and interpreter design. TinyWasm successfully passes all the official WebAssembly 1.0 tests and also includes features from future proposals such as like bulk memory operations. Initially more of a research project, TinyWasm focuses on simplicity and portability. It has minimal…

    2024 · github.com · its alternatives →

  4. 4

    This is the entire Firefox browser rendering to a element. Gecko, all UI components, and the Spidermonkey JS engine are all compiled and running in WebAssembly. Here are a few things you might find interesting: - This is fully end to end encrypted! We use the WISP protocol for TCP-over-websockets. - There is a novel WASM->JS JIT for experimental site speedup - This port cost over 25k in opus/fable tokens for debugging and JIT research This was just a fun experiment to push the boundaries of WebAssembly. For a more usable "browser in browser" experience, we also built…

    Jul 2026 · developer.puter.com · its alternatives →

  5. 5

    🐹🕸️ WebAssembly runtime for Go. Contribute to wasmerio/wasmer-go development by creating an account on GitHub.

    2019 · github.com · its alternatives →

  6. 6

    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 →

  7. 7

    a very (x 10) basic wasm console. Contribute to rajatjindal/wasm-console development by creating an account on GitHub.

    2024 · github.com · its alternatives →

  8. 8WG

    I built a Vite plugin that lets you write Go code directly in .js files using a "use golang" directive. It compiles to WebAssembly automatically.

    Oct 2025 · npmjs.com · its alternatives →

  9. 9

    Web49: WebAssembly Interpeter. Contribute to FastVM/Web49 development by creating an account on GitHub.

    2023 · github.com · its alternatives →

  10. 10IW

    Hey HN! I've been working on a book about WebAssembly over the last few months, and it's finally available at http://levelupwasm.com! Why a book on WebAssembly you ask? Well... WebAssembly is awesome (obviously ) but it's certainly not the easiest thing to learn. So I wrote this book as a practical intro to using WebAssembly in your web apps. I would appreciate any feedback!

    2019 · its alternatives →

  11. 11

    New binary format for compiling applications for the web

    2015 · github.com · its alternatives →

  12. 12

    We’ve reached a major milestone in making any software run with WebAssembly. Thanks to the newest release of Wasmer (4.4) and the Wasmer JS SDK (0.8.0) ...

    2024 · wasmer.io · its alternatives →

  13. 13

    Compile WebAssembly to JVM and other WASM tools. Contribute to cretz/asmble development by creating an account on GitHub.

    2017 · github.com · its alternatives →

  14. 14

    In the [first article in this series](<https://wasmer.io/posts/wasm-as-universal-binary-format-part-1-native-executables>) we demonstrated how you can c...

    2022 · wasmer.io · its alternatives →

  15. 15

    My implementation of Thorsten Bell's book (Writing an Interpreter in Go) - actuallyachraf/monkey-giggle

    2020 · github.com · its alternatives →

  16. 16

    Hi HN! We (pdubroy & marianoguerra) just launched an online book called WebAssembly from the Ground Up. It's an online book to learn Wasm by building a simple compiler in JavaScript. This is the book we wish we'd had 3 years ago. Unlike many WebAssembly resources that focus on use cases and tooling, we wanted a deep dive into how Wasm actually works. We focus on the core of WebAssembly: the module format and the instruction set. We think the low-level details — the "virtual ISA" — are the most interesting part, and we had the crazy idea that writing a compiler is the best way to learn it.…

    2025 · wasmgroundup.com · its alternatives →

  17. 17GP
  18. 18

    repo of my sizecoding entries. Contribute to ilmenit/sizecoding development by creating an account on GitHub.

    2024 · github.com · its alternatives →

  19. 19

    A self-hostable Wasm sandbox for JavaScript workers.

    Jun 2026 · kyushu.dev · its alternatives →

  20. 20

    Dev's offline page is fun and we did implement it with Rust and WebAssembly. Go is simple. Can we d... Tagged with go, webassembly, showdev.

    2019 · dev.to · its alternatives →

  21. 21

    A tiny WebAssembly Runtime written in Rust

    2024 · github.com · its alternatives →

  22. 22

    Recently created a minimal persistent relational database in Go. Main focus was on implementing & understanding working the of database, storage management & transaction handling. Use of B+ Tree for storage engine(support for indexing), managing a Free List (for reusing nodes), Support for transactions, Concurrent Reads. Still have many things to add & fix like query processing being one of the main & fixing some bugs Repo link - https:&#x2F;&#x2F;github.com&#x2F;Sahilb315&#x2F;AtomixDB Would love to hear your thoughts

    2025 · github.com · its alternatives →

  23. 23

    Hi HN! I’m Syrus, from the Wasmer team. We just released the new version of WAPM that is an order of magnitude better than the previous one (that we also announced here in HN two years ago! [0]), enabling an incredible experience for using and publishing WebAssembly packages. The tech stack that we are using includes: * Python and Django (for the backend) with Graphene (for the open GraphQL API [1]) and Django Channels with websockets over GraphQL [2] for subscriptions * Next.js [3] with React-Relay [4] and Tailwind.css [5] for the frontend * WebAssembly and Wasmer [6] (for the online shell)…

    2022 · wapm.io · its alternatives →

  24. 24

    Write your own compiler: introduction. Code genetation. AST. Abstract syntax tree. lisp. javascript.

    2017 · blog.klipse.tech · its alternatives →

Also compare

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 →