# System map — fastify/fastify

> Canonical page: https://codevetter.com/unpack/fastify/system-map

# System map — 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 runtime centers on a factory exported as a CommonJS package, with separate TypeScript declarations. Fastify assembles transport, routing, request/reply behavior, and plugin boot rather than supplying a fixed application. Mutable facilities are scoped through plugin inheritance and symbol-keyed state. Database integrations belong to application plugins, while repository workflows exercise packaging and compatibility.
- package.json declares fastify.js as main, commonjs as module type, fastify.d.ts as declarations, and version 6.0.0-alpha.4. — [package.json#L1-7](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/package.json#L1-L7)
- fastify() calls processOptions, buildRouting, build404, wrapRouting, createServer, and buildSchemaController to assemble an instance. — [fastify.js#L89-117](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L89-L117)
- The root owns symbol-keyed lifecycle state, child instances, hooks, parser configuration, and scoped Request/Reply constructors. — [fastify.js#L120-176](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L120-L176)
- Avvio is configured with autostart false and use exposed as register; Fastify installs its encapsulation override and replaces ready. — [fastify.js#L359-380](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/fastify.js#L359-L380)
- getServerInstance selects a custom serverFactory, HTTP/2 secure or plain server, or HTTP/1 HTTPS/HTTP server. — [lib/server.js#L308-347](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/lib/server.js#L308-L347)
- Default schema compiler factories are loaded from @fastify/ajv-compiler and @fastify/fast-json-stringify-compiler. — [lib/schema-controller.js#L16-35](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/lib/schema-controller.js#L16-L35) [package.json#L205-220](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/package.json#L205-L220)
- The database guide explicitly describes Fastify as database agnostic and demonstrates separately registered database plugins. — [docs/Guides/Database.md#L5-16](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/docs/Guides/Database.md#L5-L16) [docs/Guides/Database.md#L24-38](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/docs/Guides/Database.md#L24-L38)
- Repository commands separate lint, borp unit tests, TSTyche type tests, generated-code integrity, and prepublication checks. — [package.json#L13-30](https://github.com/fastify/fastify/blob/19d5be0daf1c0daace758efe3ea788f924ca1224/package.json#L13-L30)

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)
