# System map — redwoodjs/redwood

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

# System map — redwoodjs/redwood

Scanned commit a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd (2025-12-13). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The repository contains framework packages, generated application templates, integration fixtures, task tooling, and a separate Docusaurus documentation application. Application runtime boundaries divide browser rendering from API execution, with Prisma clients owned by applications. Fastify hosts ordinary functions and a dedicated GraphQL Yoga integration, while a separate handler adapts Yoga to Lambda events. Root scripts coordinate package builds and tests through Nx; package manifests define the published entrypoints.
- The root is a private Yarn 4.6.0 workspace covering framework packages, adapters, authentication providers, CLI packages, and mailer components; create-redwood-rsc-app is explicitly excluded from that workspace list. — [package.json#L1-13](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/package.json#L1-L13) [package.json#L137-138](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/package.json#L137-L138)
- Root build, test, test-ci, and test:types scripts dispatch Nx targets; tsconfig.json references internal, structure, API, server, auth, web, router, testing, prerender, GraphQL, forms, and codemod projects. — [package.json#L14-48](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/package.json#L14-L48) [tsconfig.json#L1-16](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/tsconfig.json#L1-L16)
- The CLI publishes rw and redwood binaries from dist/index.js; source startup resolves --cwd, RWJS_CWD, or the nearest redwood.toml before loading application environment files. — [packages/cli/package.json#L11-18](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/cli/package.json#L11-L18) [packages/cli/src/index.js#L74-107](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/cli/src/index.js#L74-L107)
- The browser entrypoint imports application root and routes through ~redwood aliases, then selects hydrateRoot for existing markup or createRoot for an empty redwood-app element. — [packages/web/src/entry/index.jsx#L1-29](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/web/src/entry/index.jsx#L1-L29)
- createServer constructs Fastify, creates request-scoped context, registers the generic API adapter, and separately imports compiled GraphQL options to register a Yoga server. — [packages/api-server/src/createServer.ts#L105-146](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/api-server/src/createServer.ts#L105-L146)
- createGraphQLYoga owns schema assembly and an ordered Envelop plugin chain covering authentication, context, directives, Armor, operation filtering, trusted documents, errors, readiness, and logging. — [packages/graphql-server/src/createGraphQLYoga.ts#L63-90](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/graphql-server/src/createGraphQLYoga.ts#L63-L90) [packages/graphql-server/src/createGraphQLYoga.ts#L103-159](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/graphql-server/src/createGraphQLYoga.ts#L103-L159) [packages/graphql-server/src/createGraphQLYoga.ts#L161-212](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/graphql-server/src/createGraphQLYoga.ts#L161-L212)
- Database clients are application-owned: the todo fixture constructs PrismaClient in src/lib/db.js and its service performs queries and mutations against db.todo. — [__fixtures__/example-todo-main/api/src/lib/db.js#L1-6](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/__fixtures__/example-todo-main/api/src/lib/db.js#L1-L6) [__fixtures__/example-todo-main/api/src/services/todos/todos.js#L1-21](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/__fixtures__/example-todo-main/api/src/services/todos/todos.js#L1-L21)
- The server executable defaults NODE_ENV to production and provides combined, api-only, and web-only modes; the Lambda GraphQL wrapper instead translates API Gateway events into yoga.fetch requests. — [packages/api-server/src/bin.ts#L35-63](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/api-server/src/bin.ts#L35-L63) [packages/graphql-server/src/functions/graphql.ts#L71-106](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/graphql-server/src/functions/graphql.ts#L71-L106)
- The router publishes ESM and CommonJS exports plus react-server conditionals for RSC routing; its dependencies pin a React 19 release candidate. — [packages/router/package.json#L10-20](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/router/package.json#L10-L20) [packages/router/package.json#L58-70](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/router/package.json#L58-L70) [packages/router/package.json#L96-103](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/packages/router/package.json#L96-L103)
- Documentation is a separate Docusaurus application with build, serve, start, and deploy scripts; its maintenance instructions identify docs/docs as the editable source. — [docs/package.json#L1-12](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/docs/package.json#L1-L12) [docs/package.json#L26-37](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/docs/package.json#L26-L37) [docs/README.md#L15-19](https://github.com/redwoodjs/redwood/blob/a7852fb92d0e4ac2bcce1d9a755717ba6cf53ffd/docs/README.md#L15-L19)

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)
