# Feature catalog — fastify/fastify

> Canonical page: https://codevetter.com/unpack/fastify/feature-catalog

# Feature catalog — fastify/fastify

Scanned commit 19d5be0daf1c0daace758efe3ea788f924ca1224 (2026-09-29). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The user-facing product is a programmable server API. Developers declare routes, scope plugins, extend objects, configure parsers and schemas, and control transport and lifecycle behavior. Reply APIs support ordinary payloads as well as streams and Web API objects. Database and authentication examples show integrations supplied through plugins.
- Route shorthand methods include GET, HEAD, TRACE, DELETE, PATCH, POST, PUT, OPTIONS, QUERY, and all supported methods. — [fastify.js#L179-209](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L179-L209)
- route, hasRoute, and findRoute expose general registration and route discovery. — [fastify.js#L210-221](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L210-L221)
- The instance exposes addHook, shared schema access, compiler setters, reply serializer selection, and schema error formatting. — [fastify.js#L227-237](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L227-L237)
- Content parser APIs allow adding, inspecting, removing, and resetting parsers, including access to default JSON and text parsers. — [fastify.js#L240-246](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L240-L246)
- decorate, decorateRequest, decorateReply, and corresponding inspection APIs extend instance and per-request objects. — [fastify.js#L266-274](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L266-L274)
- inject offers simulated HTTP requests, lazily loads light-my-request, and boots an unstarted instance before dispatch. — [fastify.js#L474-509](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L474-L509)
- Reply.send recognizes Node streams, Web streams, Response objects, typed-array buffers, and ordinary strings. — [lib/reply.js#L177-207](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/lib/reply.js#L177-L207)
- handlerTimeout starts a request deadline that aborts request.signal and sends an error if no reply has been sent. — [lib/route.js#L531-554](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/lib/route.js#L531-L554) [docs/Reference/Lifecycle.md#L44-48](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/docs/Reference/Lifecycle.md#L44-L48)
- Custom not-found handlers, error handlers, child logger factories, and router constraint strategies are public instance features. — [fastify.js#L277-288](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L277-L288)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
