JSRehab: Weaning Common Web Interface Components from JavaScript Addiction
Résumé
Leveraging JavaScript (JS) for User Interface (UI) interactivity has been the norm on the web for many years. Yet, using JS increases bandwidth and battery consumption as scripts need to be downloaded and processed by the browser. Plus, client-side JS may expose visitors to security vulnerabilities such as Cross-Site Scripting (XSS). This paper introduces a new server-side plugin, called JSRehab, that automatically rewrites common web interface components by alternatives that do not require any JavaScript (JS). The main objective of JSRehab is to drastically reduce-and ultimately remove-the inclusion of JS in a web page to improve its responsiveness and consume less resources. We report on our implementation of JS-Rehab for Bootstrap, the most popular UI framework by far, and evaluate it on a corpus of 100 webpages. We show through manual validation that it is indeed possible to lower the dependencies of pages on JS while keeping intact its interactivity and accessibility. We observe that JSRehab brings energy savings of at least 5 % for the majority of web pages on the tested devices, while introducing a median on-the-wire overhead of only 5 % to the HTML payload.
| Origine | Fichiers produits par l'(les) auteur(s) |
|---|---|
| Licence |
![]()
Fait partie de swh:1:dir:baeb9cd748faf89d1c2272a40d75cdf9b713e8e5 Logiciel
Research artifact - Bootstrap crawl
![]()
Fait partie de swh:1:dir:9edee1aa1ea01ec1744cd5d3e7d2992bac065311 Logiciel
Research artifact - Measurements of energy consumption
![]()
Fait partie de swh:1:dir:67d6e663da70f34df3cc8424dc46a50cf88fbea6 Logiciel
Research artifact - Generating Bootstrap noscript alternatives with PostHTML
![]()
Fait partie de swh:1:dir:976e59af6832f59ee7201ec438766ce8550ea147 Logiciel
Research artifact - Browser extension to detect usage of Bootstrap