# Feature catalog — keystonejs/keystone

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

# Feature catalog — keystonejs/keystone

Scanned commit 1a8f2b7fae39ea5dac415745caea4f766109e669 (2026-09-14). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

Keystone exposes generated CRUD APIs and an editor-facing interface from the same configured lists. Built-in fields cover scalar, relationship, password, and asset data, with a separate rich-document package. Authentication, custom actions, storage integrations, and project scaffolding provide additional application capabilities.
- Each generated list context exposes findOne, findMany, count, createOne/createMany, updateOne/updateMany, and deleteOne/deleteMany; omitted GraphQL operations become unsupported context calls. — [packages/core/src/lib/context/api.ts#L10-54](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/lib/context/api.ts#L10-L54) [packages/core/src/lib/context/api.ts#L63-83](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/lib/context/api.ts#L63-L83)
- writeAdminFiles() generates home, no-access, list, item, and create pages; CreateItemPage submits the configured fields and navigates to the new item's route. — [packages/core/src/admin-ui/templates/index.ts#L27-50](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/admin-ui/templates/index.ts#L27-L50) [packages/core/src/admin-ui/pages/CreateItemPage/index.tsx#L34-60](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/admin-ui/pages/CreateItemPage/index.tsx#L34-L60)
- ListPage supports field filters, search, sorting, selectable columns, pagination, and custom actions; list preferences are restored from localStorage with URL query values taking precedence. — [packages/core/src/admin-ui/pages/ListPage/index.tsx#L291-337](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/admin-ui/pages/ListPage/index.tsx#L291-L337) [packages/core/src/admin-ui/pages/ListPage/index.tsx#L387-416](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/admin-ui/pages/ListPage/index.tsx#L387-L416) [packages/core/src/admin-ui/pages/ListPage/index.tsx#L444-480](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/admin-ui/pages/ListPage/index.tsx#L444-L480)
- Core exports checkbox, numeric types, text, select/multiselect, JSON, bytes, timestamp/calendarDay, password, virtual, relationship, file, and image field factories. — [packages/core/src/fields/index.ts#L1-34](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/core/src/fields/index.ts#L1-L34)
- The document field supports configurable formatting, links, dividers, layouts, relationships, and component blocks; document output can optionally hydrate relationship data. — [packages/fields-document/src/index.ts#L36-82](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/fields-document/src/index.ts#L36-L82) [packages/fields-document/src/index.ts#L155-185](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/fields-document/src/index.ts#L155-L185)
- createAuth() adds password authentication, authenticatedItem, endSession, generated sign-in files, session-data hydration, and denied-access redirects to sign-in. — [packages/auth/src/index.ts#L65-78](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/auth/src/index.ts#L65-L78) [packages/auth/src/index.ts#L108-148](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/auth/src/index.ts#L108-L148) [packages/auth/src/gql/getBaseAuthSchema.ts#L55-84](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/auth/src/gql/getBaseAuthSchema.ts#L55-L84)
- Custom list actions can collect field-rendered arguments and configure prompts, success/failure messages, visibility, and navigation; the actions example implements vote, report, and hideWithReason. — [examples/actions/schema.ts#L60-98](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/examples/actions/schema.ts#L60-L98) [examples/actions/schema.ts#L99-139](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/examples/actions/schema.ts#L99-L139) [examples/actions/schema.ts#L142-190](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/examples/actions/schema.ts#L142-L190)
- Asset examples provide local filesystem storage and S3 public/signed URLs; Cloudinary exposes transformed image URLs, and create-keystone-app copies a starter project into a selected directory. — [examples/assets-local/schema.ts#L28-56](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/examples/assets-local/schema.ts#L28-L56) [examples/assets-s3/schema.ts#L28-70](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/examples/assets-s3/schema.ts#L28-L70) [packages/cloudinary/src/index.ts#L93-115](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/cloudinary/src/index.ts#L93-L115) [packages/create/src/index.ts#L58-90](https://github.com/keystonejs/keystone/blob/1a8f2b7fae39ea5dac415745caea4f766109e669/packages/create/src/index.ts#L58-L90)

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)
