Debug & Review · LOCAL TOOL
Stack Trace Parser
Turn pasted V8, Node.js, or browser-style stack lines into a compact frame list with function, file, line, and column where available.
No API call
Your input
LOCALResult
Run the tool to see a result.
Your result will appear here. Input is not saved.
WHY THIS TOOL EXISTS
A focused job, not a black box.
Repeated frames are counted and native or unparsed lines remain visible. This keeps the first useful application frame easier to spot without pretending that source maps are available.
How to use it
- Paste the error and stack text.
- Review parsed frames in their original order.
- Use file and line coordinates in the matching source build.
TRY A WORKING EXAMPLE
Start with known input.
Load this sample into the workspace, run the tool, and compare the result shown below.
Show sample input
{
"stack": "TypeError: value.trim is not a function\n at normalize (src/format.js:18:12)\n at run (src/main.js:42:3)\n at async processQueue (src/worker.js:77:9)"
}Expected sample result from the local tool
3 frame(s) parsed · 0 frame-like line(s) need manual review.
{
"error": "TypeError: value.trim is not a function",
"frames": [
{
"function": "normalize",
"file": "src/format.js",
"line": 18,
"column": 12,
"original": " at normalize (src/format.js:18:12)"
},
{
"function": "run",
"file": "src/main.js",
"line": 42,
"column": 3,
"original": " at run (src/main.js:42:3)"
},
{
"function": "async processQueue",
"file": "src/worker.js",
"line": 77,
"column": 9,
"original": " at async processQueue (src/worker.js:77:9)"
}
],
"repeatedLocations": [],
"unparsed": []
}LIMITS AND INTERPRETATION
What the result cannot tell you.
Formats vary across runtimes and bundlers. The parser does not fetch source maps, resolve paths, or identify the cause of an exception.
Inputs are processed in this page and are not written to local storage.