Edit this page

Getting Started

What is Keystone?

Keystone is a powerful Node.js content management system and web app framework built on the Express web framework and Mongoose ODM. Mongoose is an Object-Document Mapper (ODM) which provides a schema-based solution for modelling data and relationships for documents stored in the MongoDB database server. Keystone extends Mongoose's schema-based models with the concept of a Keystone List that helps you build beautiful Admin UIs with intelligent field types.

Keystone aims to make it easy for you to create sophisticated web sites and applications, but without restricting how much you can customise your projects. You can bring your own view engine, structure your routes however you want, and modify your data structures to suit your requirements.

Prerequisites

  1. Make sure you have the Node.js JavaScript runtime installed. Keystone 4 has been most throughly tested with Node 6, but should be compatible with newer production releases. We recommend using Node LTS (Long Term Support) releases for their extended support lifecycle and stability.

  2. You will also need to access to a MongoDB database server either installed locally or hosted remotely. Keystone 4 should be compatible with current production releases of MongoDB.

  3. You will need a reasonable working knowledge of JavaScript, Node.js, and npm to use Keystone. Basic familiarity with database concepts and MongoDB would also be helpful.

Where to Begin

Quick Start Guide

If you want to get a project up and running locally with minimal fuss, we recommend starting with the Keystone Yeoman Generator. The Keystone Yeoman Generator provides a prompted experience to help you generate a full project ready to npm start with optional features like a basic blog, feedback form, and image gallery.

Setting Up From Scratch

If you prefer to write your code from scratch, check out our four part Setting Up guide. This guide will walk you through setting up the core files and settings to get you started with Keystone.

Where To Next?

Check out our documentation if you want to learn more about Keystone and the available options. Database Configuration is a good place to start, as are the Keystone Setup Options for general configuration.