Knowledge Hub
Payload CMS
Written by Samuel Pitonak
Last update: 6/11/2024
Feature | Payload CMS | |
---|---|---|
CMS Type | API | |
Editor Experience | ||
Dashboard Internationalization The CMS interface can be displayed in multiple languages, making it accessible for non-English speakers. | ||
Multilanguage Content Support for creating and managing content in multiple languages. Useful for global websites that need to cater to different regions. | ||
Scheduling & Releases Allows you to schedule content to be published at a specific time and date in the future. | requires plugin | |
Content Versioning Keeps track of different versions of content, allowing you to revert to previous versions if needed. Like an "undo" button for your content. | ||
Autosave Automatically saves changes as you work, preventing data loss if something unexpected happens, like a browser crash. | ||
Preview Content Lets you see how content will look on your live site before publishing it. Like a sneak peek before it goes live. | requires a developer | |
Multiple Environments Support for different stages of content (e.g., development, staging, production). This allows testing changes in a safe environment before going live. | ||
Workflow Sets up an approval process for content creation. For example, a writer might submit content, then an editor reviews and approves it before publishing. | ||
Customizable UI Allows customization of the CMS user interface to match your brand or specific needs. | ||
Team Management | ||
User Roles Predefined roles (like admin, editor, viewer) with specific permissions. | ||
Custom User Roles Ability to create custom roles with specific permissions tailored to your organization’s needs. | ||
Organization Management Allows you to manage different user groups and access within the CMS. | ||
Developer Experience | ||
REST API An API that follows REST principles, allowing developers to interact with the CMS using standard HTTP requests. | ||
GraphQL API An API that uses GraphQL, allowing clients to request exactly the data they need, making data fetching more efficient. | ||
Images API API specifically for managing images, including uploading, processing, and retrieving images. | ||
Content Management API API for managing content, including creating, updating, and deleting content items. | ||
Field Types Different types of data fields available for content, such as text, number, date, media, etc. | ||
Custom Field Types Allows you to create even more specific field types beyond the basic ones, to perfectly match the type of content you manage. | ||
Webhooks Allows the CMS to send real-time notifications to other systems or services when certain events happen (e.g., content published). You can use these to trigger actions in other applications. | ||
CLI Command Line Interface tools that allow developers to perform tasks and manage the tool via the command line. | ||
SDK A set of tools and pre-written code snippets that developers can use to integrate the CMS with their project more easily. | ||
Free Tier | ||
Free Plan Available Some headless CMS providers offer a free plan with limited features, allowing you to try it out before committing. | ||
Team Members The number of users (team members) that can be added to the CMS. | Unlimited | |
Locales The number of different languages and regional settings the CMS supports for content creation and management. | Unlimited | |
Projects Support for managing multiple projects within the same CMS account. | N/A | |
Security & Compliance Offerings | ||
Two-factor authentication Adds an extra layer of security when logging in. | ||
Team Logs Tracks user activity within the platform for better accountability. | N/A | |
GDPR Compliance with the General Data Protection Regulation for handling personal data. | ||
SOC2 Service Organization Control 2 compliance for managing customer data. | ||
ISO27001 International standard for information security management. | ||
Others | ||
Extensions Additional plugins or add-ons that can enhance the functionality of the platform. | ||
Built-in Backups & Restore Features that automatically back up content and settings, allowing easy restoration in case of data loss. |
Payload is a CMS that gives you full control over almost anything you can think of. You have the ability to completely customize the visual appearance of the admin UI, set up authentication and access control on a document or field-level, localize and manage complex content by using the diversity of field types that it provides, and a whole lot more. Keep in mind that with great power comes great responsibility. If you are willing to accept in order to have a great amount of flexibility at hand, Payload will be probably a good fit for you.
By default, it is very simple and clean with no distortions and you are free to change it completely as it is fully customizable. Payload’s config file gives you the power to make Payload look any way you want just by exchanging the built-in React components with the ones of your choice.
In addition to swapping default views in the UI such as dashboard and account, it is also possible to replace components that help pick and visualize the content-type field values.
Having a field in which color needs to be selected? Provide a custom color picker component and boost the editing experience.
Payload provides REST and GraphQL APIs which are auto-generated based on the collections defined in the configuration file. There is also a local API that can be useful when using a server-side rendering framework such as NextJS so you no longer need to make a request to a third-party server in order to get data that needs to be displayed.
Authentication can be enabled on any data collection and that collection can then be thought of as a user. Payload provides a new set of operations on authentication-enabled collections which will provide login, logout, reset the password, and some other functions which are part of the general authentication flow that uses JWTs (JSON Web Token).
Payload's community has developed quite significantly since it's first debut in 2021. The CMS is being actively maintained on GitHub by a number of contributors and the repository stargazers amount to 7000 which is more than 10 times more when comparing to a year before.
The Payload CMS was made completely free in 2022, allowing for complete freedom in regards to modifications and use. It is possible to get an official dedicated development support and support through SLA on the Enterprise tier.
With Payload you are able to easily opt-in to using Versions which allow you through the Admin UI to see the history of your documents in detail, revert to an older version of a document, manage who can see versions or drafts of your documents, set up mechanism to automatically make documents go public at a future date or to create drafts. Drafts allow you to work on preview implementations or on not-ready-to-publish documents while not making these changes public. You can use the autosave feature when Versions and Drafts are enabled, which repeatedly saves your progress at your defined interval as a new draft version. And whenever your document is ready, you publish it.
By setting up the preview option in the admin section in one of your Collection configs, the Preview button will appear in the Edit view for the corresponding collection. This function generates a link pointing to the frontend that lets you preview changes in documents on data without publishing them.
Declaring which team member has access to what documents is easy and intuitive with Payload’s access control. It is possible to manage access at three different levels: Global, Collections, Fields. By default, all your Collections and Globals require the user to be logged in to interact in any way. But this can be modified to suit your manner by writing query restrictions or a simple JavaScript function with boolean return value.
For example:
Developers behind Payload CMS are planning to internationalize Payload’s admin panel (Q1 2023). Meaning that there should be a new option added for users who do not speak English to switch the admin panel to different supported languages. For more information, you can access the GitHub discussion at this link.
The Payload CMS has been completely free since the 24th of May in 2022 after more than a year of providing 1 free and 2 paid tiers. It is under the MIT license meaning it is free for projects of any shape or size. As per license, there are no restrictions when it comes to the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software.