☕ Dynamic code analysis for JavaScript
Iroh is a dynamic code analysis tool for JavaScript. Iroh allows to record your code flow in realtime, intercept runtime values and manipulate program behaviour on the fly.
npm install iroh
or alternatively the browser distribution from here.
You can play with some live examples here and you can clone them from here.
(A simple textual model is used here)
function factorial(n) {
if (n === 0) return 1;
return n * factorial(n - 1);
};
factorial(3);
call factorial ( [3] )
call factorial ( [2] )
call factorial ( [1] )
call factorial ( [0] )
if
if end
call factorial end -> [1]
call factorial end -> [1]
call factorial end -> [2]
call factorial end -> [6]
- Runtime call tree graphs
- Runtime type checking
- Runtime code quality
- Runtime test cases
- Realtime code visualizations
- Intercept eval, setTimeout etc.
- Intercept and manipulate code/data on the fly
- Visual learning