Skip to content
Book Open access

An Empirical Study of WebAssembly Usage in Node.js

Apr 2026 · Proceedings of the 2026 IEEE/ACM 48th International Conference on Software Engineering · pp. 1482-1493 · 1 citation · 33 references

TL;DR

This paper presents the first comprehensive study of WebAssembly usage in Node.js code, enabled by a novel dataset that is enabled by a novel dataset that includes 510 executable Node.js packages that exercise 217 unique WebAssembly modules.

Abstract

WebAssembly code executes within a host environment, such as JavaScript running on Node.js. Despite the increasing popularity of mixed JavaScript-WebAssembly applications, the interactions between these two languages and the effect of WebAssembly usage on the NPM ecosystem, are currently not well understood. As a result, developers of program analyses, runtime engines, and ecosystem tooling are forced to make assumptions that may not hold in practice. Moreover, there currently is no executable dataset of WebAssembly modules that allows for studying how WebAssembly is used at runtime within Node.js packages. This paper presents the first comprehensive study of WebAssembly usage in Node.js code. The study is enabled by a novel dataset that we collect comprising 510 executable Node.js packages that exercise 217 unique WebAssembly modules. We study dependencies among packages that use WebAssembly, how JavaScript and WebAssembly interoperate, and the implications for security, efficiency and reliability in the WebAssembly-JavaScript ecosystem. The study provides several insights and future research opportunities, including: (i) a lack of maintenance of WebAssembly binaries that are ports of C/C++/Rust libraries, which motivates future work on cross-language package maintenance, (ii) a lack of testing of WebAssembly usage from JavaScript, which motivates work on targeted testing techniques; (iii) relatively little dynamism in WebAssembly usage, allowing for pragmatic assumptions in program analyses; and (iv) untapped optimization opportunities in engine caching and client-specific debloating. Beyond these insights, we envision our dataset to provide a basis for future studies, program analyses, and work on WebAssembly engine design.

Read PDF

Similar papers

Conference Sep 2026

Exploiting WebAssembly for Evasive Code Execution over Modern Web Browsers

WebAssembly has emerged as a paradigm shift in web development, providing performance-enhancing capabilities for networked web applications. It is designed as a compilation target for high-level languages, and is widely supported by 95.46% of popular modern browsers and platforms (e.g., Firefox, Chrome, Opera) as of Ma...

Yassine Mekdad, Abbas Acar, Güliz Seray Tuncay et al. · 0 citations
Preprint Oct 2026

A Hybrid Information Flow Analysis Framework for Android Hybrid Apps

The WebView interface in Android (hybrid) applications enables the native side (e.g., Java) to exchange data with the Web (e.g., JavaScript). This creates cross-language information flow channels that existing single-language analyzers cannot analyze. Existing hybrid app analyses address only part of the problem: some...

Jyoti Prakash, M. Kjærgaard, Abhishek Tiwari · 0 citations
Book Open access Oct 2026

In-the-Wild JavaScript Dead-Code Elimination via HTTP Range Requests

JavaScript (JS) bloat is a major source of slow, data-inefficient web performance, as many sites ship large monolithic bundles with substantial unused code. Existing JS dead-code elimination techniques help but require server-side support and are therefore hard to deploy. This paper evaluates HTTP range requests as a c...

Ayush Pandey, Vladimir Sharkovski, Matteo Varvello et al. · 0 citations
Open access Oct 2026

A Python-based web application firewall for SQLi protection in heterogeneous web server environments

PyWAF, a Python-based WAF developed as a reverse proxy that offers flexible protection across heterogeneous web servers against SQLi attacks, was evaluated in compatibility testing and reliability testing across three popular web server environments namely Apache, Nginx, and OpenLiteSpeed.

Muhammad Nur Yasir Utomo, Eddy Tungadi, M. Ahyar · 0 citations
Book Open access Oct 2026

A Fresh Look at Website Complexity

Over the last 15 years, the web has changed significantly with the use of mobile-first design, JavaScript-heavy single-page applications, HTTP/2 and HTTP/3, and widespread CDN-driven infrastructure. In this replicability track paper, we provide a fresh perspective on website complexity based on the current web and revi...

A. Kunz, Lukas Kawollek, Yasin Alhamwy et al. · 0 citations
Preprint Oct 2026

SIEVE: A Parameterized GitHub Corpus Builder for Software Engineering Research

Software engineering research increasingly relies on large, richly annotated corpora of real-world code. Still, researchers typically assemble these with ad-hoc scripts or static, pre-built datasets that offer no control over corpus composition. This leaves a gap for a reusable tool that goes below the repository level...

Musfiqur Rahman, Mahi Begoug, Emad Shihab · 0 citations

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.