WebAssembly
WebAssembly

Want to learn and master WebAssembly?

Join Exercism’s WebAssembly Track for access to 21 exercises with automatic analysis of your code and personal mentoring, all 100% free.

Explore exercises

About WebAssembly

(module
  (func (export "add") (param $a i32) (param $b i32) (result i32)
    (i32.add (local.get $a) (local.get $b))
  )
)

Key Features of WebAssembly


WebAssembly

Simple Syntax

Simpler than native assembly languages, offering a good onramp to systems programming.

Fast

Optimized for fast (just-in-time) compilation to native code and raw execution speed.

Cross-platform

Libraries reuse across languages and ecosystems. Executables run on desktops and servers.

Designed by a committee

A vendor-neutral W3C standard with numerous contributors from research labs and industry.

Ever-evolving

While a core MVP is production-ready, numerous proposals will expand WebAssembly in the future.

JavaScript Interopability

WebAssembly is a first-class citizen of the web with excellent interoperability with JavaScript.

Get mentored the WebAssembly way

Every language has its own way of doing things. WebAssembly is no different. Our mentors will help you learn to think like a WebAssembly developer and how to write idiomatic code in WebAssembly. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in WebAssembly - they'll help you discover the things you don't know that you don't know.

Learn more about mentoring

Community-sourced WebAssembly exercises

The WebAssembly track on Exercism has 21 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.

See all WebAssembly exercises
WebAssembly

Get started with the WebAssembly track

The best part, it’s 100% free for everyone.