Best of WebAssemblyApril 2026

  1. 1
    Video
    Avatar of dreamsofcodeDreams of Code·2w

    Rust on the web is starting to look quite good.

    An overview of the current state of Rust for web development in 2026, covering frontend, backend, and full-stack frameworks. The Yew framework (React-inspired, virtual DOM, CSR/SSR) is demonstrated with a counter app, built and served using the Trunk bundler. Leptos is covered as a full-stack option with fine-grained reactivity via signals, server functions, and deployment to a VPS with Caddy. Dioxus is highlighted as the author's preferred framework due to its write-once, run-anywhere approach (web, desktop, mobile), RSX DSL, and a shadcn-inspired component library. Desktop Rust frameworks like iced, egui, and GPUI that compile to WebAssembly are also mentioned. The web-sys and wasm-bindgen crates enable interop with browser APIs and JavaScript packages. AI coding tools (Claude Code, Codex) are credited for lowering the barrier to working with complex Rust/WASM interop code.

  2. 2
    Article
    Avatar of hackadayHackaday·4w

    TinyGo Boldly Goes Where No Go Ever Did Go Before

    TinyGo, the Go compiler targeting microcontrollers and WebAssembly, now supports over 100 development boards including Adafruit products, ESP32s, and even the Nintendo Game Boy Advance. Garbage collection has been implemented, though it's slower than standard Go and unsupported on AVR chips or WebAssembly. Key limitations remain: no wireless connectivity support and incomplete standard library coverage. Despite these gaps, TinyGo represents meaningful progress since its 2019 debut targeting only Arduino and BBC:micro boards.

  3. 3
    Article
    Avatar of infoworldInfoWorld·5w

    Rust team warns of WebAssembly change

    The Rust team has announced a breaking change for WebAssembly targets: the --allow-undefined flag passed to wasm-ld will be removed, landing in nightly builds soon and shipping with Rust 1.96 on 2026-05-28. This flag has historically allowed undefined symbols to silently become imports rather than linker errors, causing subtle bugs like typos in symbol names producing broken binaries instead of compile-time errors. The change aligns WebAssembly behavior with native platforms, where undefined symbols are errors by default. In practice, most projects are not expected to break, and the change should improve diagnostics for misconfigured builds.

  4. 4
    Article
    Avatar of elibenderskyEli Bendersky·4w

    a WebAssembly Toolkit for Go

    watgo is a new open-source WebAssembly toolkit for Go, offering zero-dependency parsing, validation, encoding, and decoding of WebAssembly modules. It provides both a CLI (compatible with wasm-tools) and a Go API centered around wasmir, a semantic IR for WASM modules. The project passes the full official WebAssembly spec core test suite, achieved through a custom harness that converts WAT to binary WASM and executes it via Node.js.

  5. 5
    Article
    Avatar of cloudflareCloudflare·2w

    Making Rust Workers reliable: panic and abort recovery in wasm‑bindgen

    Cloudflare details how Rust Workers now handle panic and abort recovery in WebAssembly via upstream contributions to wasm-bindgen. Historically, panics were fatal and could poison an entire Worker instance, causing cascading failures. The team implemented panic=unwind support using the WebAssembly Exception Handling proposal, allowing panics to surface as JavaScript PanicError exceptions while keeping the Wasm instance valid. For aborts (e.g., OOM), they added abort classification using Exception.Tag to distinguish recoverable from non-recoverable errors, plus a set_on_abort hook and reentrancy guards. A --reset-state-function mechanism enables automatic reinitialization for Wasm library use cases. The team also backported modern WebAssembly Exception Handling to Node.js 24 and 22 to unblock ecosystem adoption. These changes are available in workers-rs 0.8.0 via the --panic-unwind flag, with plans to make it the default.

  6. 6
    Article
    Avatar of googleossGoogle Open Source Blog·3w

    Jaspr: Why web development in Dart might just be a good idea

    Jaspr is an open source web framework for Dart that brings a Flutter-like development experience to web development, supporting SSR, SSG, and client-side rendering in a single cohesive framework. Created by Kilian Schulte as a solo project starting in 2022, Jaspr has grown to power the official dart.dev, flutter.dev, and docs.flutter.dev websites serving over a million monthly active users. The framework leverages Dart's unique compiler architecture to offer stateful hot-reload, full-stack debugging, and production builds via dart2js or dart2wasm (WebAssembly). A jaspr_content plugin handles content-driven sites from Markdown, currently powering over 3,900 documentation pages. The author argues Jaspr is ideal for Flutter teams wanting fast, SEO-friendly websites while sharing business logic and models across mobile and web codebases.

  7. 7
    Article
    Avatar of jswklyJavaScript Weekly·1w

    JavaScript Weekly Issue 783: April 28, 2026

    JavaScript Weekly issue 783 curates the latest in the JS ecosystem. Highlights include a comprehensive overview of ES2025 and ES2026 features (iterator helpers, Promise.try, Map.getOrInsert, Temporal), a new JS package manager called Aube focused on performance, Nano Stores 1.3 (a 286-byte framework-agnostic state manager), tips on debugging WASM in Chrome DevTools, writing Node.js addons with .NET Native AOT, and a guide on the simplest C-to-WebAssembly-to-JS pipeline. Also covered: Cloudflare agent-readiness tools, Cypress TypeScript 6.0 upgrade, and miscellaneous ecosystem news.

  8. 8
    Article
    Avatar of glwGolang Weekly·3w

    Golang Weekly Issue 597: April 17, 2026

    Golang Weekly Issue 597 curates several Go-focused articles and tools: a deep dive into the Go compiler internals to implement a conditional expression syntax; watgo, a zero-dependency pure Go WebAssembly toolkit for parsing WAT and creating WASM binaries; a guide on error translation in layered Go services using domain sentinels; and gontainer, a reflection-based dependency injection container from NVIDIA with no external dependencies.

  9. 9
    Article
    Avatar of flutterFlutter·3w

    We rebuilt Flutter’s websites with Dart and Jaspr

    Flutter's team migrated dart.dev, flutter.dev, and docs.flutter.dev from a fragmented stack (Eleventy/Node.js and Wagtail/Python) to a unified Dart-based setup using Jaspr, an open-source web framework. Jaspr supports client-side rendering, server-side rendering, and static site generation, with a component model familiar to Flutter developers. Key benefits include a single Dart toolchain, partial hydration for performance and SEO, Markdown-driven content via Jaspr Content, and seamless use of new Dart features like dot shorthands, null-aware collection elements, and WebAssembly compilation. The migration was a collaborative effort with Jaspr's creator Kilian, who also built out Jaspr Content to meet the sites' needs.

  10. 10
    Article
    Avatar of Marmelabmarmelab·4w

    AI Strikes Back: Using an LLM to write COBOL

    A developer used GitHub Copilot to build a browser-based COBOL IDE with zero prior COBOL experience, and it worked impressively well. However, reading the generated code revealed a critical remote code execution vulnerability: user-submitted COBOL was compiled and run directly on the server with no sandboxing. Copilot never flagged the security issue unprompted, but identified it clearly when explicitly asked. Three remediation approaches are discussed — Docker container isolation, syscall filtering, and compiling COBOL to WebAssembly for client-side execution. The key takeaway is that AI coding tools build what you describe, not what is safe to deploy; the judgment to ask the right security questions still requires a developer in the loop.

  11. 11
    Video
    Avatar of freecodecampfreeCodeCamp·2w

    Tired of switching between C# for the back end and JS for the front end?

    Blazor is a Microsoft framework that lets developers build full-stack web applications using C# and HTML, eliminating the need to switch between C# for the backend and JavaScript for the frontend. It uses a component-based architecture similar to React or Vue and comes in two flavors: Blazor WebAssembly (code runs client-side in the browser at near-native speed) and Blazor Server (code stays on the server with UI updates pushed via SignalR). A key advantage is code sharing — DTOs, validation logic, and models can be reused across both client and server.