payload cms payload cms

The most powerful TypeScript CMS

Code-first Headless CMS that bridges the gap between CMS and application framework


Explore the docs »

Request Feature · Report Bug · Join Discord · Docs · Website


    git commit activity   Discord   npm   Payload CMS Twitter


Payload headless CMS Admin panel built with React
## ⭐ Why Payload? Payload is a CMS that has been designed for developers from the ground up to deliver them what they need to build great digital products. If you know JavaScript, you know Payload. It's a _code-first_ CMS, which allows us to do a lot of things right: - Payload gives you everything you need, but then steps back and lets you build what you want in JavaScript or TypeScript - with no unnecessary complexity brought by GUIs. You'll understand how your CMS works because you will have written it exactly how you want it. - Bring your own Express server and do whatever you need on top of Payload. Payload doesn't impose anything on you or your app. - Completely control the Admin panel by using your own React components. Swap out fields or even entire views with ease. - Use your data however and wherever you need thanks to auto-generated, yet fully extensible REST, GraphQL, and Local Node APIs. ## ✨ Features - Completely free and open-source - [GraphQL](https://payloadcms.com/docs/graphql/overview), [REST](https://payloadcms.com/docs/rest-api/overview), and [Local](https://payloadcms.com/docs/local-api/overview) APIs - [Easily customizable ReactJS Admin](https://payloadcms.com/docs/admin/overview) - [Fully self-hosted](https://payloadcms.com/docs/production/deployment) - [Extensible Authentication](https://payloadcms.com/docs/authentication/overview) - [Local file storage & upload](https://payloadcms.com/docs/upload/overview) - [Version History and Drafts](https://payloadcms.com/docs/versions/overview) - [Field-based Localization](https://payloadcms.com/docs/configuration/localization) - [Block-based Layout Builder](https://payloadcms.com/docs/fields/blocks) - [Extensible SlateJS rich text editor](https://payloadcms.com/docs/fields/rich-text) - [Array field type](https://payloadcms.com/docs/fields/array) - [Field conditional logic](https://payloadcms.com/docs/fields/overview#conditional-logic) - Extremely granular [Access Control](https://payloadcms.com/docs/access-control/overview) - [Document and field-level hooks](https://payloadcms.com/docs/hooks/overview) for every action Payload provides - Built with Typescript & very Typescript-friendly - Intensely fast API - Highly secure thanks to HTTP-only cookies, CSRF protection, and more ## 🚀 Quick Start Before beginning to work with Payload, make sure you have all of the [required software](https://payloadcms.com/docs/getting-started/installation). From there, the easiest way to get started with Payload is to use the `create-payload-app` package: ```text npx create-payload-app ``` Alternatively, it only takes about five minutes to [create an app from scratch](https://payloadcms.com/docs/getting-started/installation#from-scratch). ## 🗒️ Documentation Check out the [Payload website](https://payloadcms.com/docs/getting-started/what-is-payload) to find in-depth documentation for everything that Payload offers. ## 🙋 Contributing If you want to add contributions to this repository, please follow the instructions in [contributing.md](./contributing.md). ## 🚨 Need help? There are lots of good conversations and resources in our Github Discussions board & our Discord Server. If you're struggling with something, chances are, someone's already solved what you're up against. :point_down: - [GitHub Discussions](https://github.com/payloadcms/payload/discussions) - [GitHub Issues](https://github.com/payloadcms/payload/issues) - [Discord](https://t.co/30APlsQUPB) ## ⭐ Like what we're doing? Give us a star ![payload-github-star](https://cms.payloadcms.com/media/payload-github-star.gif) ## 👏 Thanks to all our contributors