Skip to content
KeystoneJS LogoKeystoneJS
👋🏻 We're working on the next generation of KeystoneJS! If you're using the @keystone-next packages, click here to learn more

Create Keystone app

This is the last active development release of this package as Keystone 5 is now in a 6 to 12 month active maintenance phase. For more information please read our Keystone 5 and beyond post.

A CLI for Keystone to help generate starter apps.



yarn create keystone-5-app my-app

and follow the prompts.


A non-interactive Keystone app creation could be useful in unattended app generation. One such example is creating a Docker image with a generated Keystone app built in. See the list of possible arguments in the Arguments section below.

npm init keystone-5-app --name "My App" --template "starter" --database "MongoDB" --connection-string mongodb://localhost/MyApp --test-connection false my-app

The app generation will fall back to interactive prompts if any of the arguments are missing or have incorrect values.

Note: By the time this documentation was written, yarn create was not working because the CLI arguments were not passed to the create-keystone-5-app script.


--nameStringThe Keystone app name visible in the Admin UI and page titles.
--templateStringOne of the existing app templates (folder name). For example: starter, todo, etc.
--databaseStringOne of the databases listed in the app template. One of: MongoDB or PostgreSQL.
--connection-stringStringThe connection string to connect to your database.
--test-connectionBooleanTest the database connection before setting up the project.
--dry-runBooleanWill go through the app generation process validating the user inputs or CLI arguments but in the end no app will be generated.

Run the app

cd my-app # Change directory
yarn dev  # Start the development server

On this page

  • Usage
  • Interactive
  • Non-Interactive
  • Arguments
  • Run the app
Edit on GitHub