DEV Community

DarshanBattula
DarshanBattula

Posted on

I Was Tired of Useless Stack Traces… So I Built IntellError

If you’ve ever debugged a Node.js app, you’ve probably seen something like this:

TypeError: Cannot read properties of undefined (reading 'name')
    at Object.<anonymous> (/app/src/index.js:12:5)
    at Module._compile (internal/modules/cjs/loader.js:...)
    at Object.Module._extensions..js (...)
Enter fullscreen mode Exit fullscreen mode

And your reaction?

“Okay… but what actually went wrong?”


🚧 The Problem

JavaScript errors are noisy.

  • Too many irrelevant stack frames
  • Hard to spot your actual code
  • No guidance on how to fix the issue

Even though tools exist, most of them only:

  • Format errors
  • Clean stack traces

But they don’t answer the real question:

“What should I do next?”


💡 The Idea

I wanted something more than just formatting.

I wanted a tool that:

  • Highlights what matters
  • Filters out noise
  • Suggests possible fixes

So I built IntellError.

👉 https://www.npmjs.com/package/intellerror
👉 https://github.com/darshan1005/IntellError


⚡ What IntellError Does

IntellError transforms raw errors into something actually useful.

Instead of dumping a messy stack trace, it gives you:

  • Clean, readable output
  • Focus on your code (not node_modules)
  • Helpful suggestions

🔥 Example

❌ Before

TypeError: Cannot read properties of undefined (reading 'name')
    at src/user.js:10:5
    at node_modules/express/...
Enter fullscreen mode Exit fullscreen mode

✅ After (with IntellError)

❌ TypeError: Cannot read property 'name' of undefined

📍 Location:
src/user.js:10:5   ← YOUR CODE

💡 Possible Cause:
You are accessing 'name' on an undefined object

✔ Suggested Fix:
Use optional chaining:
user?.name

📦 Stack (filtered):
→ src/user.js:10:5
Enter fullscreen mode Exit fullscreen mode

🧠 Why I Built It

Every time I debugged something, I noticed:

  • I ignored most of the stack trace
  • I manually searched for the root cause
  • I repeated the same mental steps

So I asked:

“Why isn’t this automated?”

There are tools that improve error formatting, and others that focus on structured error handling, but very few actually help developers understand and fix issues faster. ([npm][1])

That’s the gap I wanted to fill.


🛠️ How It Works (Simplified)

IntellError:

  1. Parses the error stack
  2. Filters out irrelevant frames
  3. Highlights user code
  4. Applies rule-based suggestions

No AI. No heavy setup. Just useful output.


🎯 Goals

  • Make debugging faster
  • Reduce cognitive load
  • Improve developer experience

Because debugging shouldn’t feel like decoding a puzzle.


🌱 What’s Next

This is just the beginning.

Planned improvements:

  • More intelligent suggestions
  • Framework integrations (Express, etc.)
  • Better TypeScript support
  • CLI integration

🙌 Feedback

I’d love to hear your thoughts:

  • What frustrates you about debugging today?
  • What kind of suggestions would actually help?
  • Would you use something like this?

🔗 Links


🎯 Final Thought

We spend a huge part of development fixing errors.

So why are error messages still so bad?

With IntellError, I’m trying to make them just a little bit better.

Top comments (0)