Logger universal para TypeScript y JavaScript, con salida legible en terminal, JSON estructurado con los campos al principio, enmascaramiento de secretos y cero dependencias en tiempo de ejecución.
ehmicky/modern-errors
Biblioteca de manejo de errores para JavaScript/TypeScript que permite crear clases de error, envolver y agrupar errores, y normalizar excepciones no válidas.
- Estrellas
- 1,487
- Forks
- 20
- Issues abiertos
- 1
- Último commit
- hace 9 días
¿Qué es?
modern-errors es una biblioteca de JavaScript para manejar errores de forma coherente en Node.js y navegadores. Permite definir clases de error mediante una API sencilla de subclases, agregar propiedades personalizadas a los errores y envolver un error interno con uno externo usando la opción estándar cause, conservando el mensaje, la pila y la información de clase del error interno.
La biblioteca también normaliza los valores no válidos que se lanzan, como cadenas u objetos que no son instancias de Error, y los convierte en instancias de error válidas. Al llamar a BaseError.normalize() en el punto de entrada de un módulo, todos los errores lanzados serán válidos y pertenecerán a una clase conocida o a la clase predeterminada UnknownError, lo que ayuda a distinguir los fallos previstos de los errores del programa.
La funcionalidad se puede ampliar mediante plugins para la serialización, el manejo de CLI, las pilas con formato legible, las respuestas de error HTTP y el registro con Winston. El paquete es un módulo ES con tipos estrictos de TypeScript y requiere Node.js 18.18.0 o posterior.
Funciones clave
- 01Crear clases de error mediante una API sencilla de subclases.
- 02Agregar propiedades personalizadas a los errores, incluidas propiedades internas no enumerables.
- 03Envolver errores internos con la opción estándar cause, combinando sus mensajes y pilas.
- 04Agrupar varios errores en uno, incluso si pertenecen a clases de error personalizadas.
- 05Normalizar los valores no válidos que se lanzan y convertirlos en instancias de error válidas.
- 06Ampliar el comportamiento mediante plugins y tipos estrictos de TypeScript.
Casos de uso
- Definir un conjunto compartido de clases de error para una biblioteca de Node.js o de navegador.
- Separar los errores previstos en la entrada del usuario de los errores inesperados en el límite de un módulo.
- Agregar contexto a los errores a medida que se propagan por las distintas capas del código.
- Serializar errores a JSON y restaurarlos con el plugin serialize.
Inicio rápido
- 1
Instala la biblioteca con npm
npm install modern-errors - 2
Crea clases de error con ModernError.subclass e impórtalas donde las necesites
Antes de usarlo
- Requiere Node.js 18.18.0 o posterior.
- Solo es un módulo ES y no se puede cargar con require().
Temas
Preguntas frecuentes
- ¿Qué es modern-errors?
- Biblioteca de manejo de errores para JavaScript/TypeScript que permite crear clases de error, envolver y agrupar errores, y normalizar excepciones no válidas. modern-errors es una biblioteca de JavaScript para manejar errores de forma coherente en Node.js y navegadores. Permite definir clases de error mediante una API sencilla de subclases, agregar propiedades personalizadas a los errores y envolver un error interno con uno externo usando la opción estándar cause, conservando el mensaje, la pila y la información de clase del error interno.
- ¿modern-errors es gratuito? ¿Qué licencia tiene?
- modern-errors es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿modern-errors sigue mantenido?
- Mantenimiento activo. El último commit de modern-errors fue el 13 oct 2026.
- ¿Para qué puedo usar modern-errors?
- Definir un conjunto compartido de clases de error para una biblioteca de Node.js o de navegador. Separar los errores previstos en la entrada del usuario de los errores inesperados en el límite de un módulo. Agregar contexto a los errores a medida que se propagan por las distintas capas del código. Serializar errores a JSON y restaurarlos con el plugin serialize.
- ¿Cómo se instala modern-errors?
- Instala la biblioteca con npm: npm install modern-errors Crea clases de error con ModernError.subclass e impórtalas donde las necesites
- ¿Dónde consigo modern-errors?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ehmicky/modern-errors
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Reimplementación en TypeScript del cliente ADB que funciona en navegadores Chromium, Node.js y Electron, y se conecta a dispositivos Android mediante WebUSB.
Biblioteca JavaScript que extrae los colores dominantes y las paletas de colores de imágenes en el navegador y en Node.js.
Extensión de VSCode que reformatea los mensajes de error de TypeScript para mostrar tipos legibles, con resaltado de sintaxis y enlaces a documentación y explicaciones.
CLI que evalúa la calidad del código de un proyecto en 14 lenguajes y genera un informe con una puntuación global y un ranking por archivo.
Herramienta de código abierto para pruebas de API e integración que registra tráfico real con eBPF y lo reproduce como pruebas y mocks de datos, sin modificar el código.