Cats Go Wasm/WASI: Typelevel on Server-side WebAssembly

Session Abstract

Recent work in the scala-wasm fork of Scala.js has made it possible for Scala apps to run directly on the WebAssembly Component Model platform. In this talk, I will share my progress of porting Cats Effect and FS2 libraries to this shiny new architecture.

Session Description

The WebAssembly Component Model is a new platform for building secure, composable Wasm applications with explicitly defined, type-safe interfaces. All communication between Wasm components and the outside world has to go through standardized interfaces such as WASI. As a result of this design, all Scala code directly accessing platform-specific APIs has to be ported over to this new platform.

This year, my proposal to port core parts of the Typelevel stack onto the Wasm/WASI platform was chosen for the Google Summer of Code program. Even though the resulting code is still a prototype, it makes it possible for several real-world apps to “just run” as Wasm components with little to no changes.

In this lightning talk, I will briefly go over the set of core I/O mechanisms used by Cats Effect and FS2 and describe their prototype implementation for the WASI 0.2 API.

Kesselhaus
12.Oct 2026
12:20pm - 12:25pm
Lightning Talk
Mariusz Jakoniuk
Mariusz Jakoniuk

Undergrad CS Student & GSoC Contributor

Typelevel