Roadmap
After a year of intensive development Keystone 6 has achieved a General Availability release! We’ve graduated to the@keystone-6
namespace on npm and have a stable set of APIs that you can confidently build on 🚀
Research & Development
Surveyed the landscape. Formed concepts around what a next-gen experience would look like. Started laying the foundations.
Community Preview
Published the New Interfaces as @keystone-next
on npm. Commenced iteration based on community & internal feedback.
General Availability Release
Stabilised the new architecture & APIs. Docs & example projects. Published as @keystone-6
on npm.
Maturity, community, & next-gen Admin UI
A better dev-configured editing experience. Maturity & features in Keystone core. More pathways to grow with Keystone.
What's Next
We’re using the foundations we shipped in 2021 as a springboard to bring developers, project owners, and editors into more productive ways of working together. Our key areas of focus for 2022 are:
- A next-gen Admin UI that unifies developer and editor collaborations in new and exciting ways
- Maturing the DX with better Types and capabilities for self-hosting and media management
- Enabling community with more pathways for you to learn and grow with Keystone
Next-gen Admin UI
Our design team spent much of the second half of 2021 defining a new vision for Admin UI that gives you more capabilities to support content editors in ways that matter most to them. We’ve already shipped quick wins for customisable logos, pages, and navigation, but the really transformative features (that rely on more extensive customisation) are still in the works. This body of work will elevate the experience of authoring content in Keystone to the same high standards we have for authoring with Keystone’s core APIs.
Maturing the Developer Experience
We’ll continue to iterate on making Keystone the easiest way to design and standup a GraphQL API on the web. Going all-in on Typescript has made the DX so sweet, but we want to take it further so that Keystone’s the best Typescript > GraphQL developer experience in the ecosystem. ✨
We’ll also focus on making better pathways for you to integrate Keystone with the deployment services you use most, so you can get the most out of where the modern web is going. Image and file management is an area we’re actively iterating on, and we’ll have more to share soon.
Enabling the community
At Thinkmill, we have a longstanding commitment to open source that includes the likes of react select, classnames, and of course Keystone 🙂. Now that Keystone 6 is stable enough to develop features and integrations around, we’ll put better processes in place for you to collaborate around the Keystone project and showcase your awesome work with others in the community.
Feature Roadmap
To see what we’ve recently shipped, checkout our updates and release notes 🚀
Currently iterating on
We have the foundations for these in place, and are working on making them better.
- Fields & Schema
Image & file management
We have the basics in place and are working towards more seamless end-to-end options.
- Core
Back-end APIs for Node.js apps
Access your GraphQL APIs from Node.js for greater flexibility when writing apps and hybrid use-cases.
- Docs
Build & Deployment options
We’re broadening our list of streamlined scenarios & looking into options for serverless environments.
- Docs
Onboarding series
A step by step tutorial series that takes you from first principles through to a working local Keystone instance.
Next up
- Fields & Schema
Nested fields
Sometimes you need to manage data in structures that are nested and/or repeating. We’re working on a way to define these in schema and have them stored as JSON field in the database.
- Fields & Schema
Singletons
A way to define a single object in schema that’s editable in Admin UI and accessible in the GraphQL API. Handy for storing website & social settings, API keys, and more.
- Core
Sortable lists
Certain list types come with a need to order the items they contain. We’re looking in to an approach that’s easy to implement in schema.
- Admin UI
Field Descriptions
A way to give helpful context to your editors when they’re filling out fields. Makes their job easier and improves what goes into your database.
Further afield
Admin UI
Field Groups
It’s often easier to work with content when the form is grouped into different sections of related fields.
Localisation
When an English-language UI doesn’t work for your team there’ll be a way for you to add translations to all the strings in Admin UI.
Conditional fields
Dynamically showing fields based on the value of other fields is a great way to improve editing flow and content integrity.
Responsive Layout
An editing interface that’s available for you to use no matter what device you’re on.
A11y compliance
Solving accessibility in a customisable editing interface is a hard problem. We’re up for the challenge.
Content preview
Built-in tooling for you to give editors a sense of how their content will be consumed by end users.
Non-destructive editing
Better safeguards for saving changes when you transition in and out of different editing contexts.
Version history
Store content changes over time. Easy rollbacks to earlier versions if you make a mistake or change your mind.
Custom publishing workflows
Design your own journey from
draft
topublished
to meet the unique needs of your content team.Relationship management
More powerful interfaces for managing different scales of related data, from small to really really large
Schema & API
GraphQL Subscriptions
Long lasting server operations that can change their result over time. Handy for updating your front-end in real time when important data changes in your backend.
Field Translations
A built-in schema-driven approach to supporting multilingual content projects.
Upsert mutations
If you want to update an item but aren’t sure if it exists, this will update the item if it’s there or create a new item with the data you’ve provided.
Core
Serverless hosting
The future of deployment is serverless, and we're tracking the state of the ecosystem to make sure Keystone is ready for it.
Native full-text search
A way for you and editors to easily search for strings across your entire dataset. Handy for when you need something specific but don’t know where it lives.
MongoDB
Native support for the MongoDB database type. We’ll look at adding this when Prisma’s implementation of MongoDB is battle-tested.
Got a feature you’re after, or want to know more about the future?
Join the Keystone conversation on Slack, GitHub, and Twitter.