GAME BOY COLOR EMULATOR
wasmboy
WasmBoy — a Game Boy / Game Boy Color emulator library implemented in WebAssembly (AssemblyScript) with web-based demos and a debugger/shell.

WHY IT MATTERS
Why WasmBoy exists
WasmBoy was written to demonstrate and explore WebAssembly performance for a classic console emulator, provide an embeddable emulator library, and offer a web-based debugger/shell for inspecting Game Boy / Game Boy Color internals.
BEST FOR
Best for
Developers and researchers who want a WebAssembly-based Game Boy / Game Boy Color core to embed in web apps, experiment with AssemblyScript + Wasm, or use the web debugger/demos to inspect execution and graphics.
The people behind wasmboy
History & provenance
WasmBoy (often stylized wasmboy) is an open-source Game Boy / Game Boy Color emulator library authored by Aaron Turner (GitHub: torch2424) and maintained in a public GitHub repository. The project was developed as a WebAssembly/AssemblyScript emulator core with demo frontends (Preact, Svelte) and a browser-hosted debugger (wasmboy.app). It has been used as an example project to show Wasm performance for emulation and has been mirrored on a few package/CDN sites and mirrors. The project sources, wiki, and the web debugger are available from the repository and project site listed below.
What wasmboy supports
- Game Boy (DMG)
- Game Boy Color (GBC)
- Browser (WebAssembly)
- Embeddable JS API / npm package (Wasm module consumers)
Download and availability
OFFICIAL DOWNLOADS
Get wasmboy
Official source and binary/artifact releases are provided from the project's GitHub releases page. Prebuilt package artifacts are also published to public CDNs (UNPKG/npm). For browser demos and the debugger, visit the project web demo site.
Get wasmboy ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗wasmboy setup guide
Setup note: This setup guide explains how to obtain WasmBoy, run the web debugger/demo, and embed the WasmBoy core into a web project or use the released artifacts.
- 1) Inspect the official repository: Start at the official GitHub repository (torch2424/wasmboy). The repo contains source, a wiki, demos, and documentation. Read the README and the Wiki pages for the core API and building instructions before attempting to build or embed the library.
- 2) Use the hosted web debugger/demo: Open the hosted WasmBoy debugger at the project demo site. The web demo runs the emulator in-browser and exposes the debugger/shell UI for loading ROM files, inspecting memory/CPU state, and viewing graphics. This is the quickest way to try WasmBoy without building anything locally.
- 3) Download releases or use the CDN package: For embedding, use the project's releases on GitHub or the published npm package/CDN bundle (UNPKG). If you need a packaged Wasm + JS wrapper, fetch the release artifacts appropriate to your integration path (check the release notes for the version you pick).
- 4) Local build (if you need to compile): If you need to build from source, follow the repo's build instructions: install Node.js and AssemblyScript toolchain as documented, then run the provided build scripts. The repository and wiki include guidance for compiling the AssemblyScript sources to Wasm and producing the JS glue used by the demos. Consult the Core API wiki for details on exported functions and lifecycle.
- 5) Embedding & API usage: Embed the compiled Wasm module and the provided JS wrapper into your web app. Use the documented WasmBoy/WasmBoy API (see the project's wiki) to load ROM data (user-supplied), step or run the CPU, and stream video/audio frames into a canvas/audio output. Tests, examples, and demo frontends in the repo show common integration patterns.
- 6) Debugging & development: Use the web debugger to inspect problematic ROMs or to learn the emulator internals. For development, enable the debug builds in the repository to get extra logging and test helpers. Refer to the project's wiki pages for the Core API and debugger-specific instructions.
Software reminder: WasmBoy provides only the emulator core and demos. You must supply any ROM files you use; the project does not include commercial game ROMs, firmware, or licensed BIOS files.
Sources and further reading
Detailed guides and tutorials
Explore step-by-step guides for wasmboy as they are published.
Retro Replay Retro Gaming History, Reviews & Emulation