Skip to content

KeystoneJS

Archived Node.js CMS and web app framework built on Express and Mongoose, with an auto-generated admin UI.keystonejs/keystone-classic

Stars
14.5k
Forks
2.1k
Licence
MIT
Language
JavaScript
Last update
2 months ago
Type
Library

This repository is archived and no longer maintained.

What it is

Keystone classic is a Node.js framework for building content management systems and web apps. It is built on the Express web framework and the Mongoose MongoDB modeling library, and it generates an admin interface for editing your data. The project is archived and receives no new updates; its README recommends Keystone 6 for new projects.

  • Defining data models with built-in field types and editing them in the auto-generated admin UI
  • Adding helper methods to models, such as formatting dates or resizing images
  • Setting configuration through keystone.init or keystone.set before starting the app

Great for

  • Developers maintaining an existing Keystone v4 project
  • Teams that already use Express and MongoDB and want a generated admin UI
  • Learners studying how a Node.js CMS was structured

Not ideal for

  • Anyone starting a new project, because the README recommends Keystone 6 instead and this version gets no new updates
  • Teams that need active security or bug fixes, since archived code will not receive them
  • People who do not use MongoDB, since the README says Keystone builds on MongoDB types

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js · npm

    Install the Yeoman generator

    npm install -g generator-keystone

    Create a project with the generator

    yo keystone
  2. 2

    Run it

    • Install the generator with npm install -g generator-keystone
    • Run yo keystone and answer the questions
    • Install the packages the generator creates from npm
    • Read the documentation to learn how to define your app
  3. 3

    Get the most out of it

    • Set NODE_ENV=production in your .env file for production features such as template caching and HTML minification
    • Use keystone.set to configure options before keystone.start, so you can set routes after configuring lists
    • Review the field types documentation for helper methods on models

Downloads

Strengths

  • Generates a responsive admin UI for editing content without extra work
  • Built on well-known tools, Express and Mongoose
  • Free and open source under the MIT license

Trade-offs

  • Archived, so it receives no new updates and the README points users to Keystone 6
  • Depends on MongoDB as its data layer, according to the README
  • Documentation links point to older v4 and v3 sites, which may be less maintained

How it compares

ProjectStarsTypeLevelUpdatedBest for
keystone-classic (this)14.5kLibraryadvanced2 months agoDevelopers maintaining an existing Keystone v4 project
Ghost55.7kAppintermediate4 days agoWriters or publishers who want to run their own blog or newsletter site
payload45.6kFrameworkintermediate4 days agoDevelopers already building with Next.js and React who want a backend without a separate server
filament32.4kLibraryintermediate4 days agoLaravel developers building internal admin panels
grav15.7kAppintermediate5 days agoDevelopers who want a PHP website without running a database
emdash14.1kAppintermediate4 days agoDevelopers who already build sites with Astro and want a CMS built in

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.