# Modern Errors

Typescript error library

Source: [Console review](<https://console.dev/tools/modern-errors>)

Website: [https://github.com/ehmicky/modern-errors](<https://github.com/ehmicky/modern-errors>)

Profile updated: 2026-10-16

Category: [Testing frameworks](<https://console.dev/tools/categories/developer-tools-testing-frameworks>)

## Supported tech stack

Research checked: 2026-10-11

### Runs on

- Node.js (Runtime)

### Integrates with

- JavaScript (Language)
- TypeScript (Language)

Source: [Research source](<https://github.com/ehmicky/modern-errors>)

Documented compatibility; coverage may be incomplete. Written in describes implementation, not user-project language support.

JavaScript error library provides strict TypeScript declarations and supports Node.js.

## Console’s review — 2023-02-02

Reviewed: 2023-02-02

Author: [David Mytton](<https://console.dev/about#david-mytton>)

Citation: [This review](<https://console.dev/tools/modern-errors#review_521f50aaf5173c47cdcd85d2ab930afbc9d3f3eaa56f0e56e95c5b97a7a01973>)

### What we like

Library to provide structured errors in JS/TS. Set props on errors with typed fields. Wrap, aggregate, normalize errors. Core library provides base functionality which can be extended via plugins. Official plugins for specialist cases: CLI (colorized, pretty print, verbosity levels), HTTP (structured HTTP responses), clean stack traces, and others. Open source.

### Tradeoffs

JS/TS only. Be sure to configure TS to output ES modules, not CommonJS.

This review reflects Console’s assessment at publication on 2023-02-02. Features and limitations may have changed since the review date.

## Is Modern Errors a fit?

Based on [Console’s review published on 2023-02-02](<https://console.dev/tools/modern-errors#review_521f50aaf5173c47cdcd85d2ab930afbc9d3f3eaa56f0e56e95c5b97a7a01973>).

Summary updated: 2026-10-16

### Who it’s for

Developers using JS/TS should consider this tool for error handling

### Why consider it

It provides structured errors with typed fields

### Keep in mind

It is limited to JS/TS only

[Selection criteria](<https://console.dev/selection-criteria>) · [About Console](<https://console.dev/about>) · [Browse tools](<https://console.dev/tools>)
