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.
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.· IEEE Conference on Communica...· 0 citations
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
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.· Proceedings of the 2026 ACM...· 0 citations
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· Bulletin of Electrical Engin...· 0 citations
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.· Proceedings of the 2026 ACM...· 0 citations
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...