The Art of WebAssembly Cover

The Art of WebAssembly

Build Secure, Portable, High-Performance Applications
by Rick Battagline
May 2021, 304 pp.

Look Inside!


You can find the book's downloadable code files on GitHub.

WebAssembly is the fast, compact, portable technology that optimizes the performance of resource-intensive web applications and programs. The Art of WebAssembly is designed to give web developers a solid understanding of how it works, when to use it (and when not to), and how to develop and deploy WebAssembly apps.

First you’ll learn how to optimize and compile low-level code, debug and evaluate WebAssembly, and represent WebAssembly in the human-readable WebAssembly Text (WAT) format. Once you have the basics down, you’ll build a browser-based collision detection program, work with browser rendering technologies to create graphics and animations, and see how WebAssembly interacts with other web languages.

You’ll also learn how to:

  • Embed WebAssembly applications in web browsers and Node.js
  • Use browser debuggers to evaluate your WebAssembly code
  • Format variables, loops, functions, strings, data structures, and conditional logic in WAT
  • Manipulate memory
  • Build a program that generates graphical objects and detects when they collide
  • Evaluate the output of a WebAssembly compiler

The Art of WebAssembly will help you make sense of this powerful technology to boost the performance of your web applications.

Author Bio 

Rick Battagline is a game developer and author of Hands-On Game Development with WebAssembly (Packt Publishing, 2019). In 2006 he founded BattleLine Games LLC, an independent game studio focused on web games. Since then, he has written hundreds of games developed in various web technologies including WebAssembly, HTML5, WebGL, JavaScript, TypeScript, ActionScript, and PHP. He’s a member of the WebAssembly Community Group, and the AssemblyScript Community Group.

Table of contents 

Chapter 1: Introduction to WebAssembly
Chapter 2: WAT Basics
Chapter 3: Functions and Tables
Chapter 4: Low Level Bit Manipulation
Chapter 5: String Manipulation
Chapter 6: Linear Memory
Chapter 7: Web Applications
Chapter 8: Working with the Canvas
Chapter 9: Optimizing Performance
Chapter 10: Debugging WebAssembly
Chapter 11: AssemblyScript

View the Copyright Page
View the detailed Table of Contents
View the Index


"This book is a clear and step-by-step approach to WebAssembly. Rick Battagline is introducing all concepts from the very beginning, with illustrations and examples, so that you can learn progressively—even without any prior knowledge in low level programming. It's a pleasure to read and learn as you go through the chapters. It will be useful for either trying WebAssembly in your app or to get a good understanding before using languages compiling to WebAssembly."
—Florian Rival, The Changelog, creator of the app GDevelop and the game Lil BUB


was2wasm installation:
If wat-wasm is not working for you, please update to version 1.0.43 or newer.