KeystoneJS comes with first-class GraphQL support, a highly extensible architecture, and a wonderful Admin UI
See how to get a "To Do" app up and running in under 4 minutes with the KeystoneJS CLI
A KeystoneJS instance can be summarised as a function of your schema which creates a GraphQL API for querying, and an AdminUI for managing your data
// Define your `lists` and `fields`keystone.createList('Todo', {fields: {task: { type: Text },},});keystone.createList('User', {fields: {name: { type: Text },email: { type: Text },},});
# Generated GraphQL schematype Mutation {createTodo(..): TodoupdateTodo(..): TododeleteTodo(..): TodocreateUser(..): UserupdateUser(..): UserdeleteUser(..): User}type Query {allTodos(..): [Todo]Todo(..): TodoallUsers(..): [User]User(..): User}type Todo {id: IDtask: String}type User {id: IDname: Stringemail: String}
We believe it’s the ideal back-end for React, Vue or Angular applications, Gatsby and Next.js websites, static sites, mobile applications and more
Zero assumptions doesn’t mean zero features. Keystone comes with dozens of features out of the box including Lists, Fields, Access Control, Authentication, and Apps. You can add and configure each these, as well as extend, modify or build your own.
KeystoneJS provides an extensible Admin Interface and a powerful GraphQL API. These tools, and the building blocks Keystone provides, will allow you to create any type of application.
Provide your own PostgreSQL or MongoDB database for to Keystone to connect to deploy your application anywhere. Have complete freedom of choice when hosting your data, admin application, API and front-end applications.
Our quick start guide will get you up and running in just a few minutes. Let's build a simple todo app with a fresh install of KeystoneJS
KeystoneJS integrates seamlessly with any front-end framework, but can also be run as a headless GraphQL API and optional Admin UI
Serve HTML, CSS, JS, images and any other static resources using an express static server. This can be quick and easy way to deploy a simple front-end with a KeystoneJS application.
Take the pain out of creating Universal React apps with Next.js. Next.js is Zero Setup, Fully Extensible and Ready for Production.
Nuxt is a progressive framework based on Vue.js to create modern web applications. It can be used to create from static landing pages to complex enterprise ready web applications.
The primary focus of KeystoneJS is the GraphQL API and Admin UI. Because of this KeystoneJS works with all major front-end framework and is headless by default.