node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Build status

Cleaner and more readable stack traces for all

stack-filter is a tiny module that strips out unwanted elements of a stack trace and optimizing the remaining items for readability. stack-filter works in browsers (including old and rowdy ones, like IE6) and Node. It will define itself as an AMD module if you want it to (i.e. if there's a define function available).


stackFilter(stackTrace[, cwd])

Accepts a stack trace as a string (e.g. one obtained from error.stack) and an optional working directory, and returns a pruned stack trace in the form of an array of lines.

The cwd option is used to shorten paths by removing common prefixes. For example, Buster.JS uses this option to trim down URLs like http://localhost:1111/sessions/0d15095714a93cd8f9a42e97b0b280fa1550a6ac/resources/lib/file.js to lib/files.js. The current working directory is optional, and may be either a string or a regular expression.

var stackFilter = require("stack-filter");
stackFilter.filters.push("jquery.js"); // Ignore lines from within jQuery 
stackFilter(error.stack); //=> Lines, excluding any lines from within jQuery 


This array contains all the filters. A filter may be either a string (partial match against path) or a regular expression.