diswasm

WASM analysis workbench
HomeDocsReferenceCompilerRuntimeBenchmarksDisassemblyDecompileEditEasy EditorIntermediateCreateSavedControllerGame StudioAboutLicensesContributorsOpen source

Local-first parsing. No automatic module execution.

self-hosted mode

Learn. Build. Explore WASM.

Learn, build, and explore WebAssembly — one block, byte, and idea at a time.

diswasm is a hands-on workbench for WebAssembly. Read the docs, browse every instruction with real opcode bytes, click together a module in the visual editor, compile WAT in the browser, and run the result inside a sandboxed worker. No backend required.

Learn WebAssembly Build a module Open compiler

Or jump to the runtime lab, the instruction reference, or the opcode primer.

DocsPlain-language guides for WebAssembly, WAT, runtimes, and security.Reference434+ instructions with hex/decimal opcodes, immediates, and proposal notes.EditorsBeginner block editor and a deeper structured editor with keyboard reorder.Runtime labInstantiate and call WASM in a Web Worker sandbox. Save to IndexedDB.

What you can learn here

  • What an opcode is, what an immediate operand is, and how WAT maps to binary bytes.
  • How a browser validates, compiles, instantiates, and sandboxes a WebAssembly module.
  • How to call a WASM function from JavaScript and pass it integers, floats, and bigints.
  • The differences between WASM, JavaScript, native code, and the old Flash plugin model.

Start a workflow

Easy Editor Intermediate Decompile Edit About

New features soon

Honest roadmap — none of these are claimed as ready
  • Step-by-step debugger

    Walk through your WAT or visual blocks one instruction at a time and watch the operand stack update live.

    planned
  • Gamepad reader / controller interface

    Browser Gamepad API surfaced as a WASM-friendly input layer. Foundation available in /labs/controller.

    foundation
  • Game creator IDE

    Scratch-style block scripting for games, with WASM-powered logic hooks. Foundation lives at /labs/game-studio.

    foundation
  • Canvas/WebGL/WebGPU experiments

    Renderer capability checks and small graphics labs that compare browser rendering paths.

    foundation
  • Game engine labs

    Tiny scene, sprite, input, timing, and collision labs that can call into WASM logic blocks.

    planned
  • SIMD benchmark lab

    Side-by-side scalar / SIMD micro-benchmarks with variance reporting.

    planned
  • Threads & shared-memory experiments

    Worker-isolated demos of atomics and shared linear memory.

    experimental
  • Advanced binary visualizer

    Clickable section and opcode bytes with source mapping back to WAT where possible.

    planned
  • Interactive stack machine visualizer

    A learner-friendly trace of operand stack changes for supported WAT snippets.

    planned
  • Browser support matrix

    Per-instruction proposal status mapped against current major browsers.

    planned
  • Function-chain pipelines

    Compose WASM functions and JavaScript transforms into pipelines in Create and Xrefs.

    planned
  • Server-side compiler mode

    Sandboxed AssemblyScript / Rust / C / C++ compilation behind explicit opt-in flags.

    scoped-out by default