nowfound

Dev tools · February 26, 2026

A Wasm to Go Translator

I've spent the past couple of weeks building a Wasm-to-Go translator. It supports a subset of Wasm useful enough to translate SQLite into 600k LoC (~20 MiB) of Go code. It already passes all of my Go SQLite driver's tests across the 20 platforms I support. Performance compared to https://wazero.io/ is a bit of a mixed bag: code that frequently crosses the Go-Wasm boundary improves, but code that spends most of its time in "Wasm land" doesn't. There's probably room for improvement (I'd love to hear your ideas), but this is also a testament to how good the wazero AOT compiler…

A Wasm to Go Translator launched on February 26, 2026 with 7 votes, #1,386 of 16,628 launches that month and more than 75% of that year's launches.

What it does

A Wasm to Go translator. Contribute to ncruces/wasm2go development by creating an account on GitHub.

wasm2go < input.wasm > output.go The input is a Wasm module, and the output is a single Go source file, with no dependencies beyond the standard library. The generated Go file forms a self-contained package, that exports a structure called Module and a New function to initialize it. The methods of the Module structure are the Wasm module's exports, whereas imports are interfaces that New consumes. We assume the input Wasm modules can be trusted. At a minimum, you should run Wasm modules through a verifier before attempting to convert an untrustedfrom github.com

In the maker’s words, at launch

I've spent the past couple of weeks building a Wasm-to-Go translator. It supports a subset of Wasm useful enough to translate SQLite into 600k LoC (~20 MiB) of Go code. It already passes all of my Go SQLite driver's tests across the 20 platforms I support. Performance compared to https:&#x2F;&#x2F;wazero.io&#x2F; is…

Does a similar job

all alternatives →
  • (bits) of a Libc, Optimized for Wasm2025 · github.com · ▲78

    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.…

  • My Go SQLite driver did poorly on a benchmark, so I fixed it2023 · github.com · ▲234

    https:&#x2F;&#x2F;github.com&#x2F;ncruces&#x2F;go-sqlite3 was doing poorly on this benchmark that was posted yesterday to HackerNews [1]. With the help of some pprof, I was able to trace it to a serious performance regression introduced two weeks ago, and come up with the fix (happy to field questions, if you're interested in the nitty gritty). It's not the fastest driver around, but it's no longer the slowest: comfortably middle of the pack. It's based on a WASM build of SQLite, and thanks to https:&#x2F;&#x2F;wazero.io doesn't need CGO. [1]:…

  • I made a Clojure-like language in Go, boots in 7msMay 2026 · github.com · ▲292

    Let-go is a Clojure-like language (~90% compatible with JVM Clojure) written in pure Go. It ships as a ~10MB static binary and cold boots in ~7ms - that's about 50x faster than JVM and 3x faster than Babashka. It has decent throughput on algorithmic workloads - within ballpark of the GraalVM-backed sci. I started this project in 2021 as an elaborate practical joke: I wanted to have an excuse for writing Clojure while pretending to write Go. Jokes aside, it turned out to be pretty decent: it feels like real Clojure, it has an nREPL server (supported in Calva, CIDER, etc.), it's easily…

  • A new stdlib for Golang focusing on platform native support2023 · github.com · ▲154

    No gc, No goroutines, Produces small binaries while using the unmodified official go toolchain, and comes with complete Web SDK (generated from w3c&#x2F;webref). We are building `pcz` to provide a reimagination of Go the language, in an effort to make it suitable for all kinds of programming tasks, and currently you can use it to build efficient web applications in Go using the generated Web SDK (as shown with the live web demo[1]). The journey is just starting, any suggestions? or any critics? [1]: https:&#x2F;&#x2F;primecitizens.github.io&#x2F;livedemos&#x2F;10-plat-web&#x2F;

  • Wrote a tiny WebAssembly (wat2wasm) compiler in Go2022 · github.com · ▲75

    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:&#x2F;&#x2F;luna-demo.vercel.app

  • TinyGo – LLVM-based Go compiler for microcontrollers2018 · github.com · ▲177

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

More dev tools this month

the category →
  • /dev/null▲468

    a social network for devs

    Dev tools · 2d ago · dev-null.sh

  • open-source IDE for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.

    Dev tools · 27d ago · github.com

  • Contribute to reladraw/reladraw development by creating an account on GitHub.

    Dev tools · 25d ago · github.com

  • OpenBot▲362

    Grok Bot alternative: free, local, open-source, multiplayer

    Dev tools · 22d ago · openbot.run

  • Talanoa▲340

    Hi HN, I’m a fullstack developer, and honestly, I’ve lost count of how many side projects I’ve worked on over the years. But one idea kept coming back to me: a different kind of email client. It first came to me in 2014: “What if we could handle emails more like conversations?” Every year, I’d revisit this concept in my “Build Notes.” Ten years later, no one had built exactly what I had in mind — so I finally decided to do it myself. That’s how Talanoa was born. I wanted something focused on people, not timelines. I was tired of marking messages as unread just to remember to reply later, or…

    Dev tools · 20d ago · talanoa.email

  • CoreSpeed▲332

    One MCP for everything your agents need: apps, memory, tools

    Dev tools · 27d ago · corespeed.io

Source: Show HN post ↗ · launch text quoted in part

Launched alongside, February 2026

the whole month →
  • Rork Max▲1,428

    Best AI for iOS apps. Website that replaces Xcode

    Life & fun · Feb 2026 · rork.com

  • happycapy▲1,365

    The agent-native computer, for the rest of us

    AI · Feb 2026 · happycapy.ai

  • SuperX▲897

    All-in-one growth OS for serious 𝕏 creators

    AI · Feb 2026 · superx.so

  • KiloClaw▲868

    Hosted OpenClaw. No Mac mini required.

    Dev tools · Feb 2026 · kilo.ai

  • Feel closer and have more fun with your partner every day!

    AI · Feb 2026 · lovon.app

  • Hello my name is Ben Ward for the past 3 years I have been remastering the financial game Wall Street Raider created by Michael Jenkins originally on DOS in 1986. It has been a rough journey but I finally see the light at the end of the tunnel. I just recently redid the website and thought maybe the full story of how this project came to be would interest you all. Thank you for reading.

    Work · Feb 2026 · wallstreetraider.com