◑docsParity
colinhacks/zod★ 44,199TypeScript

vs https://zod.dev/api

The provided API surface only lists package entry-point exports (barrel files such as `zod`, `zod/mini`, `zod/v4`, `zod/v3`, etc.), so most runtime APIs referenced in the docs cannot be directly verified against it. However, one clear inconsistency is worth flagging: the docs consistently use `import * as z from "zod"` (namespace import) as the canonical usage, while the code explicitly provides both a named `z` export and a default export. No hard signature contradictions are verifiable from the given surface.

0 high0 medium1 low
Open issue with all findings ↗
12
Files analyzed
17
API symbols
2
Doc pages
15.5s
Analyzed in
100%
API coverage: Well documented
17 of 17 exported symbols mentioned in docs
12 source files inspected · deepseek-chat · Oct 26, 2026

1 mismatch found

01

Docs standardize on namespace import while package ships named `z` and default exports

packages/zod/src/index.ts

low
In the code
export { z }  // L7
export { z as default }  // L7
In the docs
import * as z from "zod";

The docs consistently show `import * as z from "zod"` as the canonical import, but the package's entry point explicitly exports a pre-bound `z` namespace object as both a named export (`export { z }`) and a default export. A developer copying the docs will get the module namespace object, which works but differs from the intended `import { z } from "zod"` / `import z from "zod"` usage that the code surface clearly provides. This is a consistency/guidance mismatch rather than a hard error.

Suggested fix
Update the docs' canonical examples to `import { z } from "zod"` (or `import z from "zod"`), and mention that `import * as z from "zod"` also works for the classic entry point but is not the recommended form.