Skip to Page NavigationSkip to Page NavigationSkip to Content

Examples

A growing collection of projects you can run locally to learn more about Keystone’s capabilities. Each example includes documentation explaining the how and why. Use them as a reference for best practice, and a jumping off point when adding features to your own Keystone project.

All example projects live in theKeystone GitHub repo

Standalone Examples

Standalone examples demonstrate how a particular feature works or how to solve a problem with Keystone.

Blog

A basic Blog schema with Posts and Authors. Use this as a starting place for learning how to use Keystone.

Task Manager

A basic Task Management app, with Tasks and People who can be assigned to tasks. Great for learning how to use Keystone.

Authentication

Adds password-based authentication to the Task Manager starter project.

Custom Admin UI Logo

Adds a custom logo component in the Admin UI.

Custom Admin UI Navigation

Adds a custom Navigation component to the Admin UI.

Custom Admin UI Pages

Adds a custom page in the Admin UI.

Custom Field Type

Adds a custom field type based on the integer field type which lets users rate items on a 5-star scale.

Custom Field View

Adds a custom Admin UI view to a json field which provides a customised editing experience for users.

Default Values

Demonstrates how to use default values for fields.

Document field

Illustrates how to configure document fields in your Keystone system and render their data in a frontend application.

Extend GraphQL Schema

Shows you how to extend the Keystone GraphQL API with custom queries and mutations.

Extend GraphQL Schema with GraphQL TS

Demonstrates how to extend the GraphQL API provided by Keystone with custom queries and mutations using graphql-ts.

Extend GraphQL API with Nexus

Shows you how to use Nexus to extend the GraphQL API provided by Keystone with custom queries and mutations.

JSON Field

Illustrates how to use the json field type. Builds on the Task Manager starter project.

REST API endpoint

Demonstrates how to create REST endpoints by extending Keystone's express app and using the Query API to execute queries against the schema.

Testing

Shows you how to write tests against the GraphQL API to your Keystone system.

Virtual fields

Implements virtual fields in a Keystone list.

Singleton

Demonstrates how to use singleton lists with Keystone.

End-to-End Examples

End to end examples demonstrate how a feature works or how to solve a problem with an independent frontend application and a Keystone server.

Deployment Examples

Examples with all the code and documentation you need to get a Keystone project hosted on the web. You can find them in the Keystone Github Organisation.