mw/error-handler
One consistent JSON error shape: an HttpError class, Zod validation mapping and no stack leaks.
Provides: middleware:error-handler
Requires: http, validation, config:env
Files it writes
src/lib/http-error.ts(whenprovides('language:typescript'))src/lib/http-error.js(whenprovides('language:javascript'))src/middlewares/error-handler.ts(whenprovides('language:typescript') && has('http/express'))src/middlewares/error-handler.js(whenprovides('language:javascript') && has('http/express'))
What it contributes to other files
| File | Slot | Line |
|---|---|---|
src/app.ts|js | imports | import { errorHandler } from './middlewares/error-handler.js'; |
src/app.ts|js | error-handlers | app.use(errorHandler); |
src/app.ts|js | imports | import { HttpError } from './lib/http-error.js'; |
src/app.ts|js | imports | import { ZodError } from 'zod'; |
src/app.ts|js | error-handlers | app.setErrorHandler(async (error, _request, reply) => { |
src/app.ts|js | error-handlers | app.onError((error, c) => { |
Use it
atarashi new my-app --add mw/error-handler
atarashi add mw/error-handler
Version 1.0.0. Format reference: Authoring blueprints.
Part of the atarashi documentation, written and maintained by Gautam Suthar.