Need advice about which tool to choose?Ask the StackShare community!

Contentful

823
950
+ 1
70
KeystoneJS

72
208
+ 1
27
Add tool

Contentful vs KeystoneJS: What are the differences?

Introduction

Contentful and KeystoneJS are two popular content management systems (CMS) that are used to build and manage websites. While they both serve the purpose of managing content, there are several key differences between the two platforms.

  1. Hosting and Infrastructure: Contentful is a cloud-based CMS, which means that all content and data are stored and managed on Contentful's servers. On the other hand, KeystoneJS is a self-hosted CMS, allowing users to have more control over the hosting and infrastructure setup. Users can deploy KeystoneJS on their preferred hosting providers or even on their own servers.

  2. Programming Language: Contentful is language-agnostic, which means it can be integrated with websites built using any programming language. This flexibility allows developers to choose the programming language that best suits their project. In contrast, KeystoneJS is built on Node.js and can be considered a JavaScript-focused CMS. It provides a JavaScript-based development environment and allows developers to leverage the power of Node.js ecosystem.

  3. User Interface Customization: Contentful offers a fully customizable user interface (UI), allowing users to tailor the CMS interface to their specific needs and branding. Users can create custom entry fields, design layout views, and add personalized branding. On the other hand, KeystoneJS has a more opinionated UI, with a predefined admin interface that is designed to be developer-friendly. While it can still be customized, the level of UI customization in KeystoneJS is relatively limited compared to Contentful.

  4. Database: Contentful uses a proprietary content infrastructure that is designed to provide a scalable and fast content delivery experience. It abstracts away the details of the underlying database and provides a unified API for content retrieval and management. In contrast, KeystoneJS allows developers to choose the database of their choice. It supports multiple databases including MongoDB, MySQL, and PostgreSQL. This flexibility allows developers to leverage their preferred database technology or integrate with existing database infrastructure.

  5. Content Modeling: Contentful provides a rich content modeling system, where users can define custom content types, relationships between them, and add validation rules to ensure data integrity. This allows for a flexible and structured content organization. KeystoneJS also offers content modeling capabilities, but the approach is more code-centric. Developers define their data models using JavaScript code, leveraging KeystoneJS's built-in data modeling API.

  6. Developer Ecosystem and Extensions: Contentful has a large and active developer ecosystem, offering extensive documentation, SDKs, and a marketplace for extensions and integrations. Users can choose from a wide range of pre-built extensions or create their own custom extensions to extend the functionality of Contentful. KeystoneJS also has an active developer community, although it may be relatively smaller compared to Contentful. It offers a plugin system for extending the CMS functionality and allows developers to create and share reusable plugins.

In summary, Contentful and KeystoneJS differ in terms of hosting and infrastructure, programming language, UI customization, database options, content modeling approaches, and developer ecosystems.

Advice on Contentful and KeystoneJS
Kamil Debbagh
Product Manager at Wooclap · | 8 upvotes · 111.5K views
Needs advice
on
ContentfulContentfulprismic.ioprismic.io
and
StrapiStrapi

Hi StackSharers, your help is dearly needed as we're making a move to which we will commit for the next few years.

Problem: As our Marketing team gets growing needs to publish content fast and autonomously, we're trying to add a CMS to our stack.

Specs:

  • This CMS should have fairly advanced marketing features: either natively built, and/or be open source, so we can either find third parties' plugins suiting our needs or build our own plugins homebrew.

  • "Advanced marketing features" like these: Non-devs should be able to handle content autonomously, Should have a non-dev friendly interface, should allow creating a library of reusable components/modules, should show the preview before publishing, should have a calendar with all publications, should show the history/tracking, should allow collaborating (Google Docs like), should display characters limit optimized for SEO.

Solution: We're considering an SSG + Headless CMS combination. We're fairly confident for the SSG (Gatsby), but we're still uncertain which CMS we should choose.

See more
Replies (3)
Recommends
on
ContentfulContentful

Of all the content management systems out there, contentful seems to be the most flexible. It consist of an user interface with an API a front end app can retrieve data from.

It makes no assumptions about how your data is presented or structured, and you can form any kind of content in the interface. Architectural portfolio with square footage attributes? Check. Carousel section on a page? Check. A blog? No problem. Entire landing pages consisting of sections that have child items in them and attributes for each child? Not an issue. Image hosting / cdn and resizing? No problem. Character limits? Widely supported. Multilingual? Easy peasy

There are two parts of the interface. Content types and content items. Content types is just a definition of how a content item is structured, you can add fields such as title, unique id, image, rich text, lists of child content items, etc. And then the API will just return a list of content items in JSON array or object format.

There is service integration with common apps, or data sources.

Because it’s just an API call, you can use literally any tech stack with it. It won’t stop you from using MySQL or any other technology alongside it. No messing about compilation, Java, maven, like with AEM. No being constrained to the CMS’s programming language or hosting environment like with Wordpress (to an extent, wp has an API too). You can integrate it with any app, whether it be serverless, on a vm, or inside a docker container.

Downside is the front end is really up to you. It’s just a cms for structuring your data. No preview though. How you present it is not handled by contentful. It is it’s greatest strength and not a weakness though

See more
Krassimir Boyanov
Independent IT Consultant, CEO at KBWEB Consult · | 3 upvotes · 69.6K views

Hi Kamil, Have you considered Adobe Experience Manager (AEM)? It is not completely open-source but is built on top of many open source modules - like Apache Sling, Apache Felix, has a great deal of open-sourced core components, supports SPA - React and Angular Recently and can be deployed as a cloud service. Good luck in your search!

See more
Gagan Jakhotiya
Engineering Manager at BigBasket · | 1 upvotes · 57.8K views
Recommends

I'd like to share my experience for a similar use case.

A couple of months back I was in a similar place while facing some similar set of challenges within our SEO and Content Team. We were working with WordPress at that moment and for some parts - we still do. While WordPress is a very fast, intuitive and comprehensive tool to power static pages, it's not ideal for: 1. The content team as it requires some level of technical skills 2. Code reusability perspective - impacts performance in a longer run 3. Performance and user experience can easily go for a toss considering content team may not be diligent with everything outside the scope of the content

While evaluating we were looking at these key criterias: 1. SEO, Performance and UX 2. Ease of use for Content Team, developer independence 3. Learning Curve for devs and more importantly content creators 4. Support for complex design cases 5. Cost

Being part of a small org on a tight budget our natural inclination was for open-source solution, Strapi, and so we gave it a go for a smaller project before jumping the marketing wagon.

Strapi is a great tool, easy to learn and pick up. You get most of the design use cases out of the box baked for you. It's a Node.js service so you'll need to manage the service (meaning you'll have to handle monitoring, logging, cdn, auth, etc) and DB - which requires quiet some dev bandwidth. Now Strapi is still very young in term of DB migrations (not a seamless deployment yet - no schema diffing mechanism), setting up different environments required effort and you can do content modeling only in development environment (the db migrations complexity) - which becomes really critical when you want devs, design and content to collaborate simultaneously and don't want repeated work for modeling. Over a 5-6 weeks of use we realised that more and more dev bandwidth is required to do progressive addition of new content and hence we did another PoC with contentful.

Comparing this with contentful - which is a managed service, comes with inbuilt environment and preview setup, gives on-the-fly content modeling (replacing all the dev bandwidth dependency for managing migrations, cdn, auth, service, etc) gives a huge advantage of speed and developer independence at a very moderate price. Plus, the UI is very intuitive (taking some concepts from Tag Manager).

Few other thing to highlight: - Both Strapi and Contentful have plugins for common tooling. - Both the dashboard supports custom data type and UI extensions. I found Contentful UI extensions much more easier to implement. - Contentful has only US based availablility zone. Simple in-memory caching can be used to improve costing and SLA.

Hope this helps!

See more
Maxim Filimonov
Needs advice
on
ContentfulContentfulprismic.ioprismic.io
and
SanitySanity

Hi Community, Would like to ask for advice from people familiar with those tools. We are a small self-funded startup and initial cost for us is very important at that stage. That's why we are leaning towards Sanity. The CMS will be used to power our website and flutter cross-platform mobile applications.

See more
Replies (1)
Recommends
on
ContentfulContentful

Former Prismic.io developer here. If you want something robust vs "looks good from a distance," I would recommend Contentful. They are the biggest for a reason. Their CMS handles a lot of use cases and has great documentation. Prismic.io will work well in simple blog-esque use cases. Their more complex features break easily and their documentation is confusing. It has fallen quite a distance behind Contentful. Sanity appears to be a much newer CMS and you might come to regret the lack of features, but I've only briefly reviewed their product.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Contentful
Pros of KeystoneJS
  • 30
    API-based cms
  • 17
    Much better than WordPress
  • 11
    Simple and customizable
  • 5
    Images API
  • 3
    Free for small projects
  • 1
    Extensible dashboard UI
  • 1
    Super simple to integrate
  • 1
    Managed Service
  • 1
    Tag Manager like UI
  • 7
    Out-of-box tools and basic services
  • 3
    Large community
  • 2
    Great schema-based auto-generated admin interface
  • 2
    Great CMS and API platform
  • 2
    Great sandbox to play with nodejs
  • 1
    Great integrations
  • 1
    A great MEAN stack
  • 1
    Detail documentations and tutorials
  • 1
    Free
  • 1
    Rapid development
  • 1
    Open source
  • 1
    "easy setup", "uses mongodb"
  • 1
    Fast on V8
  • 1
    Similar to wordpress
  • 1
    Fast growing community cms framework
  • 1
    Great culture

Sign up to add or upvote prosMake informed product decisions

Cons of Contentful
Cons of KeystoneJS
  • 5
    No spell check
  • 5
    No repeater Field
  • 4
    No free plan
  • 3
    Slow dashboard
  • 2
    Enterprise targeted
  • 2
    Pricey
  • 2
    Limited content types
  • 1
    Not scalable
  • 1
    No GraphQL API
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is Contentful?

    With Contentful, you can bring your content anywhere using our APIs, completely customize your content structure all while using your preferred programming languages and frameworks.

    What is KeystoneJS?

    Keystone is the easiest way to build database-driven websites, applications and APIs in Node.js.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Contentful?
    What companies use KeystoneJS?
    See which teams inside your own company are using Contentful or KeystoneJS.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Contentful?
    What tools integrate with KeystoneJS?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Contentful and KeystoneJS?
    Wine
    It is a free and open-source compatibility layer that aims to allow computer programs developed for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like systems.
    WordPress
    The core software is built by hundreds of community volunteers, and when you’re ready for more there are thousands of plugins and themes available to transform your site into almost anything you can imagine. Over 60 million people have chosen WordPress to power the place on the web they call “home” — we’d love you to join the family.
    Netlify
    Netlify is smart enough to process your site and make sure all assets gets optimized and served with perfect caching-headers from a cookie-less domain. We make sure your HTML is served straight from our CDN edge nodes without any round-trip to our backend servers and are the only ones to give you instant cache invalidation when you push a new deploy. Netlify is also the only static hosting service with integrated continuous deployment.
    Strapi
    Strapi is100% JavaScript, extensible, and fully customizable. It enables developers to build projects faster by providing a customizable API out of the box and giving them the freedom to use the their favorite tools.
    Drupal
    Drupal is an open source content management platform powering millions of websites and applications. It’s built, used, and supported by an active and diverse community of people around the world.
    See all alternatives