Hidden difficulties of debugger implementation for .NET WASM apps
Talk presentation
Debug infrastructure implementation for .NET (Blazor) WebAssembly apps is challenging due to its unique execution environment. In this talk, we will dive deep into the hidden difficulties of debugger IDE frontend implementation for .NET WASM apps.
We'll start with an overview of Blazor WASM app execution anatomy, reviewing Debug Proxy in prticular. We will then compare regular .NET debugging with Blazor debugging and introduce Rider Debugging Infrastructure. Next, we'll discuss the steps involved in debug session initialization, including how the CDP (Chrome DevTools Protocol) is used. We will cover breakpoints, evaluation and explore multiple console views orchestration. Finally, we will discuss a few words about hot-reload, how it works and how it is supported from the IDE side.
This talk is essential for .NET developers working with Blazor WASM and anyone interested in understanding the complexities of debugging .NET WASM applications.

- JetBrains, Software Developer at Rider
- He is a software engineer mainly interested in programming languages tooling creation and a little bit of game dev.
- Actively contributing to different open-source projects in his spare time. Trying to do his best in finishing existing pet projects and creating new ones.
- Creator of EF Core and MonoGame plugins for JetBrains Rider
- LinkedIn, GitHub