Skip to main content
OpenSourceAlternatives

KeystoneJS

Open source · OSI-approvedStatus: unknownNew

Code-first headless CMS with a GraphQL API and admin UI

Alternative to Contentful

KeystoneJS is an open-source headless content management system and application framework for teams that build with JavaScript and TypeScript. Developers describe content models in code, and Keystone generates both a GraphQL API and an Admin UI for editing the content behind it. It serves product teams where engineers own the backend and editors need a purpose-built interface for pages, posts, and structured data.[1][2]

Quick verdict

Teams of developers building content-driven sites will benefit most from KeystoneJS. The decisive capability is the code-first schema that produces a working GraphQL API and Admin UI together, so backend boilerplate disappears without giving up custom logic. The material constraint is that everything starts in TypeScript and runs on infrastructure the team hosts itself, so non-technical users working alone should choose something else. If the team has developers and a database to run, choose KeystoneJS for programmable content infrastructure; if nobody writes code, pick a hosted visual CMS such as Directus instead.[1][2][3]

Key features

  • GraphQL API from a TypeScript schema Declaring lists and fields yields queries, mutations, filters, and relations automatically, and custom queries and mutations extend the schema where generated operations stop.[1][2]

  • Generated Admin UI Editors get list views, detail forms, and content management screens without design work, and developers can add custom pages, navigation entries, and branding.[1][2]

  • Fine-grained access control Read, create, update, and delete rules attach to lists and fields, so editorial permissions and public API exposure follow the same policy.[1][2]

  • Authentication and sessions Built-in auth with session management covers sign-in flows for editors and application users instead of requiring a separate identity layer.[1][2]

  • Document field for rich content A structured rich-text field supports editorial writing with formatting and embedded content, documented with its own guides and demo.[1]

  • Postgres, MySQL, or SQLite storage Prisma migrations move the schema between providers, with SQLite suited to development and embedded scenarios rather than production.[1]

  • Broad field-type library Text, timestamps, passwords, relationships, images and files, JSON, selects, and virtual fields cover common catalogue, publishing, and account shapes.[1][2]

  • Hooks and schema extension Event hooks run custom logic around operations, and documented extension points add virtual and custom fields plus testing support.[1][2]

Who will love it

  • The schema lives in the same language and repository as the rest of the application, so content changes ride the normal code-review and CI workflow.[1]

  • Teams outgrowing spreadsheets or a generic CMS get an admin interface shaped exactly around their data model.[1][2]

  • The generated API gives every client, from marketing sites to mobile apps, one typed content endpoint.[1]

Who should avoid it

  • Modelling content requires writing TypeScript and running Node.js infrastructure, so solo marketers or founders need a hosted no-code CMS instead.[1]

  • There is no vendor-hosted Keystone cloud; the database, deployment, backups, and scaling belong to the adopting team.[1][2]

  • A static site or a lightweight page builder delivers a few pages with far less setup than a self-hosted application framework.[1]

Questions worth asking

What is the best KeystoneJS alternative for non-technical users?

Directus is the more approachable choice for non-technical teams, because its admin interface and API generate from an existing SQL database with less mandatory coding, while KeystoneJS assumes a developer defines the schema in TypeScript.[1][2]

Is KeystoneJS really no-code?

No. Content modelling, access rules, and deployment are code in TypeScript, though editors work no-code inside the generated Admin UI once developers set it up.[1][2]

How much does KeystoneJS cost per month?

The software itself costs nothing: it is MIT-licensed open source with no per-seat software tiers documented. Monthly cost is whatever the team spends hosting its Node.js application and database, plus optional quoted enterprise support from Thinkmill. Pricing checked October 11, 2026.[1][2]

Can you self-host KeystoneJS?

Yes, self-hosting is the only documented model: teams run Keystone against their own Postgres, MySQL, or SQLite database. No vendor-managed cloud edition was documented; SQLite suits development rather than production.[1][2]

Sources and editorial review

Source research. Reviewed on October 11, 2026. Written by Sanjib Sah. AI assisted; reviewed by a human editor.

We have not run or tested this product.

  1. KeystoneJS: The superpowered headless CMS for developers

    official · Observed October 11, 2026

    Positioning, feature list, enterprise support, adoption signals

  2. keystonejs/keystone on GitHub

    official · Observed October 11, 2026

    Repo identity, license and stack signals

  3. Keystone 6 developer documentation

    official · Observed October 11, 2026

    Guide inventory: auth, access, document fields, custom admin

  4. Choosing the right database - Keystone 6 docs

    official · Observed October 11, 2026

    Supported database providers and production guidance

Compared with these products

Similar projects

Related projects with shared categories, technologies, or licensing.

Medusa

MedusaOpen

Commerce building blocks rather than a fixed storefront

Stars32.4K
Commit2d ago
LicenseMIT

Medusa is a set of commerce modules - cart, orders, pricing, inventory, fulfilment - exposed as APIs you compose, rather than a themed storefront you customise around the edges.

Directus

Directus

A content platform that wraps your existing SQL database

Stars30.8K
Commit1d ago
LicenseBUSL-1.1

Directus points at a SQL database you already have and generates an admin interface and an API over it, without imposing its own schema. Existing tables keep their names, types, and constraints.

Bagisto

BagistoOpen

Open-source Laravel ecommerce platform for stores and marketplaces

Stars28.2K
Commitjust now
LicenseMIT

Bagisto is an open-source Laravel ecommerce platform for building online stores, multi-vendor marketplaces, and B2B portals.

Your Next Store

Your Next StoreAIOpen

Open-source Next.js commerce starter with headless Shopify, Medusa, or Stripe checkout

Stars5,526
Commitjust now
LicenseMIT

Your Next Store is an open-source Next.js storefront starter that connects to Shopify, Medusa, Saleor, or BigCommerce, or runs standalone on Stripe with Sanity.

WooCommerce

WooCommerce

Open-source ecommerce plugin for WordPress

Stars10.5K
Commitjust now
LicenseGPL-2.0-or-later

WooCommerce is an open-source ecommerce plugin that turns a WordPress site into a self-hosted online store with payments, shipping, and a REST API.

Payload

PayloadOpen

Code-first headless CMS and Next.js backend with an auto-generated admin panel.

Stars45.2K
Commitjust now
LicenseMIT

Payload is a code-first, self-hosted headless CMS for Next.js that generates an admin panel with REST and GraphQL APIs from TypeScript config.