How to find unused/dead code in web projects (90% code in javascript)

Problem is there is no way to be really sure. Suppose the following:

  1. The initial HTML site is practically empty. There is a lot of JS code though, which seems to be unused.
  2. OnLoad, a function is called which launches an AJAX query to the server. The server returns a lot of HTML code, which is the body of the site. This body contains lots of JavaScript functions.
  3. The initial body is replaced with the body received via AJAX. Suddenly, all code is used.

Static analysis utilities are therefore useless. I do not know whether there exists a browser extension that marks all JS usage from a running browser though.


You can try using tombstones to safely locate and remove dead code from your JavaScript.

https://blog.bugsnag.com/javascript-refactoring-with-bugsnag-and-tombstones/


In order to find the unused assets, to remove manually, you can use deadfile library: https://m-izadmehr.github.io/deadfile/

It can simply find unused files, in any JS project.

Without any config, it supports ES6, JSX, and Vue files: enter image description here