# Decap CMS > Decap CMS (formerly Netlify CMS) is a free, open-source (MIT), Git-based content management system for static sites and frameworks such as Hugo, Astro, Eleventy, Next.js, Nuxt and Jekyll. It is a single-page React app served from your site's /admin/ page and configured with one config.yml file. Editors get a web UI with live previews; every change they save is a commit to your Git repository (GitHub, GitLab, Bitbucket, Gitea/Forgejo or Azure DevOps). Decap CMS is actively maintained. The latest release is 3.17.3, published on 2026-10-26. Release notes for every version: https://github.com/decaporg/decap-cms/releases - Install: a script tag from a CDN, or the decap-cms-app npm package. Start at https://decapcms.org/docs/install-decap-cms/ - Decap CMS does not need Netlify. Netlify Identity and Git Gateway are one option among several backends; GitHub, GitLab and Bitbucket can be used directly with an OAuth client. - Decap Turbo (https://decapcms.org/turbo/) is an optional paid hosted service by the Decap team, with a free plan: login without running an OAuth server, invitations and roles, a faster content proxy, and deploy status for GitHub sites. Decap CMS itself is free and works without it. - Every docs page below is also available as Markdown at the same URL with .md instead of the trailing slash. The full docs in one file: https://decapcms.org/llms-full.txt ## Docs ### Intro to Decap CMS - [Decap CMS overview](https://decapcms.org/docs/intro.md): Decap CMS (formerly Netlify CMS) is an open source content management system for your Git workflow that enables you to provide editors with a friendly UI and intuitive workflows. … - [Start with a Template](https://decapcms.org/docs/start-with-a-template.md): You can add Decap CMS to an existing site, but the quickest way to get started is with a template. Found below, our featured templates deploy a bare-bones site and Decap CMS to … - [Releases and Updating](https://decapcms.org/docs/releases.md): The latest Decap CMS release, supported Node.js versions, and how to update. - [Working with AI assistants](https://decapcms.org/docs/working-with-ai.md): Point ChatGPT, Claude, Cursor, Copilot or another coding agent at Decap's machine-readable docs, so it sets up Decap CMS from current documentation. ### Add To Your Site - [Basic Steps](https://decapcms.org/docs/basic-steps.md): This tutorial guides you through the steps for adding Decap CMS to a site that’s built with a common static site generator, like Jekyll, Hugo, Hexo, or Gatsby. Alternatively, you … - [1. Install Decap CMS](https://decapcms.org/docs/install-decap-cms.md): A static admin folder contains all Decap CMS files, stored at the root of your published site. Where you store this folder in the source files depends on your static site … - [2. Choosing a Backend](https://decapcms.org/docs/choosing-a-backend.md): Now that you have your Decap CMS files in place and configured, all that’s left is to enable authentication. To follow this guide, you need a Netlify account. If you don’t have … - [3. Configure Decap CMS](https://decapcms.org/docs/configure-decap-cms.md): Configuration is different for every site, so we’ll break it down into parts. Add all the code snippets in this section to your admin/config.yml file. Backend We’re using Netlify … - [4. Access Your Content](https://decapcms.org/docs/access-your-content.md): Your site CMS is now fully configured and ready for login! If you set your registration preference to “Invite only,” invite yourself (and anyone else you choose) as a site user. To … ### Account Settings - [Backends overview](https://decapcms.org/docs/backends-overview.md): A backend is JavaScript code that allows Decap CMS to communicate with a service that stores content - typically a Git host like GitHub or GitLab. It provides functions that Decap … - [Git Gateway](https://decapcms.org/docs/git-gateway-backend.md): Git Gateway is a Netlify open source project that allows you to add editors to your site CMS without giving them direct write access to your GitHub or GitLab repository. (For … - [Azure](https://decapcms.org/docs/azure-backend.md): For repositories stored on Azure, the azure backend allows CMS users to log in directly with their Azure account. Note that all users must have write access to your content … - [Bitbucket](https://decapcms.org/docs/bitbucket-backend.md): For repositories stored on Bitbucket, the bitbucket backend allows CMS users to log in directly with their Bitbucket account. Note that all users must have write access to your … - [Gitea / Forgejo](https://decapcms.org/docs/gitea-backend.md): For repositories stored on Gitea or Forgejo instances, the gitea backend allows CMS users to log in directly with their Gitea/Forgejo account. Note that all users must have push … - [GitHub](https://decapcms.org/docs/github-backend.md): For repositories stored on GitHub, the github backend allows CMS users to log in directly with their GitHub account. Note that all users must have push access to your content … - [GitLab](https://decapcms.org/docs/gitlab-backend.md): For repositories stored on GitLab, the gitlab backend allows CMS users to log in directly with their GitLab account. Note that all users must have push access to your content … - [Test](https://decapcms.org/docs/test-backend.md): You can use the test-repo backend to try out Decap CMS without connecting to a Git repo. With this backend, you can write and publish content normally, but any changes will … - [External OAuth Clients](https://decapcms.org/docs/external-oauth-clients.md): If you would like to facilitate your own OAuth authentication rather than use Netlify’s service or a client side flow like implicit or PKCE, you can use one of the … - [Decap Proxy: Work With a Local Repository](https://decapcms.org/docs/decap-proxy.md): You can connect Decap CMS to a local directory, instead of working with a remote Git repository. Navigate to a local directory configured with the CMS. Add the top-level property … ### Configuring your Site - [Configuration Options](https://decapcms.org/docs/configuration-options.md): Configuration File All configuration options for Decap CMS are specified in a config.yml file, in the folder where you access the editor UI (usually in the /admin folder). … - [i18n Support](https://decapcms.org/docs/i18n.md): The CMS can provide a side by side interface for authoring content in multiple languages. Configuring the CMS for i18n support requires top level configuration, collection level … ### Media - [Cloudinary](https://decapcms.org/docs/cloudinary.md): Cloudinary is a digital asset management platform with a broad feature set, including support for responsive image generation and URL-based image transformation. They also provide … - [Netlify Large Media](https://decapcms.org/docs/netlify-large-media.md): Note: Netlify Large Media is deprecated as of September 1, 2023. Please refer to the deprecation notice in Netlify’s Support Forums (see deprecation notice). If you’re choosing a … - [Uploadcare](https://decapcms.org/docs/uploadcare.md): Uploadcare is a sleek service that allows you to upload files without worrying about maintaining a growing collection — more of an asset store than a library. Just upload when you … ### Workflow - [Deploy Preview Links](https://decapcms.org/docs/deploy-preview-links.md): When using the editorial workflow, content editors can create and save content without publishing it to a live site. Deploy preview links provide a way to view live content when it … - [Editorial Workflows](https://decapcms.org/docs/editorial-workflows.md): By default, saving a post in the CMS interface pushes a commit directly to the publication branch specified in backend. However, you also have the option to edit the Publish Mode, … - [Open Authoring](https://decapcms.org/docs/open-authoring.md): When using the GitHub backend or the Forgejo backend, you can use Decap CMS to accept contributions from users without giving them access to your repository. When they make changes … - [Notes](https://decapcms.org/docs/notes.md): 3.15 GitHub · 3.16.3 GitLab · 3.17 Decap Turbo Notes let editors leave comments on an entry without touching its content. A note is a short message attached to an entry, shown in a … ### Collections - [Folder Collections](https://decapcms.org/docs/collection-folder.md): Collections with type folder display in the left sidebar of the Content page of the editor UI along with other types. Folder collections represent one or more files with the same … - [File Collections](https://decapcms.org/docs/collection-file.md): Collections with type files display in the left sidebar of the Content page of the editor UI along with other types. A files collection contains one or more uniquely configured … - [Nested Collections (beta)](https://decapcms.org/docs/collection-nested.md): This feature is in beta, please use with discretion. A nested collection allows a folder collection to show a nested structure of entries and edit the locations of the entries. It … - [Summary String Transformations](https://decapcms.org/docs/summary-strings.md): You can apply transformations on fields in a summary string template using filter notation syntax. Example config: collections: - name: 'posts' label: 'Posts' folder: '_posts' … ### Fields - [Widgets](https://decapcms.org/docs/widgets.md): Widgets define the data type and interface for entry fields. Decap CMS comes with several built-in widgets. Click the widget names in the sidebar to jump to specific widget … - [Creating Custom Widgets](https://decapcms.org/docs/custom-widgets.md): Decap CMS exposes a window.CMS global object that you can use to register custom widgets, previews, and editor plugins. The same object is also the default export if you import … - [Dynamic Default Values](https://decapcms.org/docs/dynamic-default-values.md): When linking to /admin/#/collections/posts/new you can pass URL parameters to pre-populate an entry. For example given the configuration: collections: - name: posts label: Posts … - [Variable Type Widgets](https://decapcms.org/docs/variable-type-widgets.md): Before this feature, the list widget allowed a set of fields to be repeated, but every list item had the same set of fields available. With variable types, multiple named sets of … ### Platform Guides - [Gatsby](https://decapcms.org/docs/gatsby.md): This guide will help you get started using Decap CMS and Gatsby. To get up and running with Gatsby, you’ll need to have Node.js installed on your computer. Note: Gatsby’s minimum … - [Hugo](https://decapcms.org/docs/hugo.md): Introduction This guide will walk you through how to integrate Decap CMS with Hugo. This is a good place to start if you want to learn from the ground up how these two tools work … - [Jekyll](https://decapcms.org/docs/jekyll.md): Introduction This section will help you integrate Decap CMS with a new or existing Jekyll project. Jekyll is a blog-aware static site generator built with Ruby. GitHub Pages are … - [NextJS](https://decapcms.org/docs/nextjs.md): This guide will help you get started using Decap CMS with NextJS. Creating a new project Let’s repeat some of the basics of setting up a simple NextJS project (check out … - [Nuxt](https://decapcms.org/docs/nuxt.md): This guide will walk you through how to integrate Decap CMS with Nuxt. Starting With create-nuxt-app Follow the instructions on the Nuxt documentation for creating a new project, … - [Middleman](https://decapcms.org/docs/middleman.md): This guide will help you get started using Decap CMS and Middleman. Installation To get up and running with Middleman, you need both the Ruby language runtime and RubyGems … - [Gridsome](https://decapcms.org/docs/gridsome.md): This guide will help you get started using Decap CMS and Gridsome. How to install Gridsome 1. Install Gridsome CLI tool # Using Yarn yarn global add @gridsome/cli # Using NPM npm … - [Docusaurus](https://decapcms.org/docs/docusaurus.md): This guide instructs you on how to integrate Decap CMS with Docusaurus. Before you begin Sign up for GitHub and Netlify. Download Node.js version 14 or above. Install the GitHub … - [VitePress](https://decapcms.org/docs/vitepress.md): This guide will walk you through how to integrate Decap CMS with VitePress. If you are using VuePress you can also the VuePress template. To use the vite-plugin-decap-cms plugin, … ### Customizing Decap CMS - [Creating Custom Previews](https://decapcms.org/docs/customization.md): Decap CMS exposes a window.CMS global object that you can use to register custom widgets, previews and editor plugins. The available customization methods are: … - [Editor Tooling](https://decapcms.org/docs/editor-tooling.md): Linting If you want to lint your Markdown files as part of your development workflow through your code editor, pre-commit hooks, and/or CI, we recommend using the Remark ecosystem. … - [Manual Initialization](https://decapcms.org/docs/manual-initialization.md): Decap CMS can now be manually initialized, rather than automatically loading up the moment you import it. The whole point of this at the moment is to inject configuration into … - [Registering to CMS Events](https://decapcms.org/docs/registering-events.md): You can execute a function when a specific CMS event occurs. Example usage: CMS.registerEventListener({ name: 'prePublish', handler: ({ author, entry }) => … - [Custom Mount Element](https://decapcms.org/docs/custom-mounting.md): Decap CMS always creates its own DOM element for mounting the application, which means it always takes over the entire page, and is generally inflexible if you’re trying to do … ### Community - [Contributor Guide](https://decapcms.org/docs/contributor-guide.md): We’re hoping that Decap CMS will do for the Jamstack what WordPress did for dynamic sites back in the day. We know we can’t do that without building a thriving community of … - [Writing Style Guide](https://decapcms.org/docs/writing-style-guide.md): Decap CMS Style Guide Adapted from the Kubernetes Style Guide Documentation Formatting Standards Use angle brackets for placeholders Use angle brackets for placeholders. Tell the … - [Examples](https://decapcms.org/docs/examples.md): Do you have a great, open source example? Submit a pull request to this page! Example Tools Type Source More info Gatsby & Decap CMS Meetup Group Template Gatsby demo … - [Architecture](https://decapcms.org/docs/architecture.md): Decap CMS is a React application, using Redux for state management with immutable data structures (immutable.js). The core abstractions for content editing are collections, … ### Decap Turbo - [Decap Turbo overview](https://decapcms.org/docs/turbo-overview.md): Decap Turbo is a hosted backend for Decap CMS. Editors log in with a Turbo account instead of a Git host account, and API calls to GitHub or GitLab go through a server-side proxy … - [Getting started](https://decapcms.org/docs/turbo-getting-started.md): Three steps before your config.yml can point at Turbo: create an organization, connect your Git provider, create a site. Create an organization Sign up with an email and password, … - [Connecting a site](https://decapcms.org/docs/turbo-connecting-a-site.md): Once you’ve created a site, switch your backend to turbo-github, or turbo-gitlab if the repo is on GitLab. Install The Turbo backends are part of Decap CMS from 3.17.0 onward, in … - [How it works](https://decapcms.org/docs/turbo-how-it-works.md): What Turbo does behind “Login with Turbo”, for evaluating whether it fits your setup. Organizations, sites, members An organization owns sites; each site is one Decap CMS install. … - [Deploy status](https://decapcms.org/docs/turbo-deploy-status.md): GitHub repositories only, on the turbo-github backend. Saving tells an editor their change was committed, not that the site has rebuilt. Deploy status closes that gap: when a … - [Deploy status setup](https://decapcms.org/docs/turbo-deploy-status-setup.md): For hosts that don’t report deploys to GitHub. See Deploy status for whether yours does. Netlify Netlify posts commit statuses and Checks to GitHub only for deploy previews — … - [Organizations, sites, and roles](https://decapcms.org/docs/turbo-roles-and-members.md): Access control across an organization and its sites. Organization roles Owners create and delete sites, invite and remove members, manage billing, and everything a member can do. … - [Media library](https://decapcms.org/docs/turbo-media-proxy.md): Pro and above. Beta: the configuration may change, and the media library will be rebuilt inside Decap CMS. Your files stay in your bucket either way. Turbo proxies media uploads to … - [Billing and plans](https://decapcms.org/docs/turbo-billing.md): Managing your plan, add-ons and payment details. Tiers and prices are on the plans page. Billing is per organization, owner-only, from the organization’s Billing page. Paddle is … - [Troubleshooting & FAQ](https://decapcms.org/docs/turbo-troubleshooting-faq.md): Loading the CMS “Unknown site_id” — turbo_site_id doesn’t match a site in your organization. Check it against the Overview tab; it’s easy to copy the wrong one when you manage … ### Widgets - [Boolean](https://decapcms.org/docs/widgets/boolean.md): The boolean widget translates a toggle switch input to a true/false value. Name: boolean UI: toggle switch Data type: boolean Options default: accepts true or false; defaults to … - [Code](https://decapcms.org/docs/widgets/code.md): The code widget provides a code editor (powered by Codemirror) with optional syntax awareness. Can output the raw code value or an object with the selected language and the raw … - [Color](https://decapcms.org/docs/widgets/color.md): The color widget translates a color picker to a color string. Name: color UI: color picker Data type: string Options: default: accepts a string; defaults to an empty string. Sets … - [Datetime](https://decapcms.org/docs/widgets/datetime.md): The datetime widget translates a datetime picker to a datetime string. Name: datetime UI: datetime-local input / date input / time input Data type: Day.js-formatted datetime string … - [File](https://decapcms.org/docs/widgets/file.md): The file widget allows editors to upload a file or select an existing one from the media library. The path to the file will be saved to the field as a string. Name: file UI: file … - [Hidden](https://decapcms.org/docs/widgets/hidden.md): Hidden widgets do not display in the UI. In folder collections that allow users to create new items, you will often want to set a default for hidden fields, so they will be set … - [Image](https://decapcms.org/docs/widgets/image.md): The image widget allows editors to upload an image or select an existing one from the media library. The path to the image file will be saved to the field as a string. Name: image … - [List](https://decapcms.org/docs/widgets/list.md): The list widget allows you to create a repeatable item in the UI which saves as a list of widget values. map a user-provided string with a comma delimiter into a list. You can … - [Map](https://decapcms.org/docs/widgets/map.md): The map widget allows you to edit spatial data using an interactive map. Spatial data for a single piece of geometry saves as a GeoJSON string in WGS84 projection. Name: map UI: … - [Richtext (Beta)](https://decapcms.org/docs/widgets/richtext.md): 3.12.0 Richtext widget is a new and improved version of the markdown widget. The richtext widget provides a full-fledged text editor, allowing users to format text with features … - [Markdown (deprecated)](https://decapcms.org/docs/widgets/markdown.md): Markdown widget is being deprecated in favor of the richtext widget, which provides all the same features and more. We recommend switching to the richtext widget for a better … - [Number](https://decapcms.org/docs/widgets/number.md): The number widget uses an HTML number input, saving the value as a string, integer, or floating point number. Name: number UI: HTML number input Data type: string by default; … - [Object](https://decapcms.org/docs/widgets/object.md): The object widget allows you to group multiple widgets together, nested under a single field. You can choose any widget as a child of an object widget—even other objects. Name: … - [Relation](https://decapcms.org/docs/widgets/relation.md): The relation widget allows you to reference items from another collection. It provides a search input with a list of entries from the collection you’re referencing, and the list … - [Select](https://decapcms.org/docs/widgets/select.md): The select widget allows you to pick a string value from a dropdown menu. Name: select UI: select input Data type: string or array Options: default: options must contain any … - [String](https://decapcms.org/docs/widgets/string.md): The string widget translates a basic text input to a string value. For larger textarea inputs, use the text widget. Name: string UI: text input Data type: string Options: default: … - [Text](https://decapcms.org/docs/widgets/text.md): The text widget takes a multiline text field and saves it as a string. For shorter text inputs, use the string widget. Name: text UI: HTML textarea Data type: string Options: … - [UUID](https://decapcms.org/docs/widgets/uuid.md): 3.15 The UUID widget generates a unique identifier when an entry is created, for example to give an entry a stable ID that doesn’t change when its title or file name does. The … ## Project - [About Decap CMS](https://decapcms.org/about/): Learn what Decap CMS stands for, how the project is maintained, and how to support or contribute to its future. - [Releases](https://github.com/decaporg/decap-cms/releases): release notes for every version - [Source code](https://github.com/decaporg/decap-cms): the decaporg/decap-cms repository ## Optional - [Decap Turbo Is Generally Available](https://decapcms.org/blog/decap-turbo-generally-available/) (2026-10-16) - [Decap Turbo Is Open to Everyone](https://decapcms.org/blog/decap-turbo-public-preview/) (2026-09-14) - [Announcing Decap Turbo](https://decapcms.org/blog/announcing-decap-turbo/) (2026-05-05) - [Richtext Widget Replaces the Markdown Widget](https://decapcms.org/blog/richtext-widget-replaces-markdown-widget/) (2026-04-16) - [Decap CMS Website Migrated to Hugo](https://decapcms.org/blog/gatsby-to-hugo-migration/) (2025-10-06) - [You can now sponsor Decap CMS](https://decapcms.org/blog/sponsor/) (2024-03-15) - [Improved Documentation: Beta Features and Add to Your Site](https://decapcms.org/blog/improved-documentation-beta-features-and-add-to-your-site/) (2024-02-12) - [New Gatsby plugin for Decap is now available](https://decapcms.org/blog/new-gatsby-plugin-for-decap-is-now-available/) (2024-02-05) - [Decap 3.1](https://decapcms.org/blog/decap-3-1/) (2024-02-01) - [Git-Based CMS: Definition, Features, Best Practices](https://decapcms.org/blog/git-based-cms-definition-features-best-practices/) (2023-11-15)