Home

Awesome

call-trace.js

Instruments a JavaScript file to record its call graph and (optionally) time spent in each function. When the file is run in the browser, a trace can be converted to the Chrome CPU profile format for viewing in DevTools.

Super buggy and doesn't work for most fairly normal code. Don't actually use this :)

Usage:

./call-trace.js input.js --time > output.js

When the output is loaded and then run, a global variable _$wɔk is created containing a trace through the code you just ran.

A CPU profile can be generated from the trace:

copy(JSON.stringify(_$wɔk.getReport()))

Then save your clipboard contents and load in Chrome DevTools.

image

Exploring the data

The global variable _$wɔk also has the following properties: