npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

errorlens-express

v0.1.0

Published

Official SDK for ErrorLens — self-hosted, AI-native error tracking. Captures errors from your Node/Express app and reports them to your self-hosted ErrorLens instance.

Readme

errorlens-express

ErrorLens banner

Official SDK for ErrorLens — self-hosted, AI-native error tracking. Captures errors from your Node/Express app and reports them to your self-hosted ErrorLens instance.

Fire-and-forget: a reporting failure (network blip, ErrorLens instance down) never throws, blocks, or crashes the app it's protecting.

Install

npm install errorlens-express

Usage

import { init, expressErrorHandler } from 'errorlens-express';

init({
  apiKey: 'el_your_project_api_key',
  url: 'https://errors.yourcompany.com',
});

// after all your routes
app.use(expressErrorHandler());

That's it. init() also attaches process.on('uncaughtException') and process.on('unhandledRejection') handlers automatically, so crashes outside the Express request/response cycle are captured too.

What gets captured

For every error: message, stack trace, the file and line it originated from, a snippet of the surrounding source code (read directly off disk — this is what makes ErrorLens's AI root-cause analysis accurate instead of guessing), and your environment (NODE_ENV by default).

API

init(options)

| Option | Required | Default | Description | |---|---|---|---| | apiKey | yes | — | The API key for this project, from ErrorLens's admin API | | url | yes | — | Your self-hosted ErrorLens instance's base URL | | environment | no | process.env.NODE_ENV | Tag reported errors with an environment | | captureUncaughtExceptions | no | true | Set false to opt out of the global handler | | captureUnhandledRejections | no | true | Set false to opt out of the global handler |

expressErrorHandler()

Returns Express error-handling middleware. Mount it after all your routes.

captureException(error)

Manually report an error, e.g. inside a catch block:

try {
  await riskyThing();
} catch (error) {
  captureException(error);
}

Requirements

Node.js 18+ (uses the native fetch API). ES Modules only.

Built & Maintained By

Manish Dash Sharma — Senior Software Engineer

Architecting AI-powered systems that scale. From GenAI integrations to full-stack solutions — turning complex problems into elegant code.

License

MIT © Manish Dash Sharma