Gathering detailed insights and metrics for gatsby-plugin-netlify-cms
Gathering detailed insights and metrics for gatsby-plugin-netlify-cms
Gathering detailed insights and metrics for gatsby-plugin-netlify-cms
Gathering detailed insights and metrics for gatsby-plugin-netlify-cms
gatsby-plugin-netlify-cms-paths
A gatsby plugin to change file paths in your markdown files to Gatsby-friendly paths when using Netlify CMS to edit them.
gatsby-plugin-static-cms
A Gatsby plugin which generates the Static CMS single page app
@emanueleperuffo/gatsby-plugin-netlify-cms
A Gatsby plugin which generates the Netlify CMS single page app
@talves/gatsby-plugin-netlify-cms
A plugin to use NetlifyCMS with React as peer dep
The best React-based framework with performance, scalability and security built in.
npm install gatsby-plugin-netlify-cms
Typescript
Module System
Min. Node Version
Node Version
NPM Version
gatsby-source-shopify@9.0.0
Updated on Jan 07, 2025
gatsby-link@5.14.1
Updated on Jan 07, 2025
gatsby-source-contentful@8.15.0
Updated on Jan 07, 2025
v5.14.0
Updated on Nov 06, 2024
gatsby-source-shopify@8.13.2
Updated on Oct 28, 2024
gatsby-source-wordpress@7.13.5 and 6 more...
Updated on Oct 28, 2024
JavaScript (58.91%)
TypeScript (38.71%)
CSS (1.05%)
HTML (0.69%)
MDX (0.45%)
Shell (0.13%)
Dockerfile (0.03%)
PHP (0.02%)
EJS (0.01%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
55,909 Stars
21,738 Commits
10,289 Forks
719 Watchers
316 Branches
3,966 Contributors
Updated on Jul 15, 2025
Latest Version
7.12.1
Package Id
gatsby-plugin-netlify-cms@7.12.1
Unpacked Size
78.71 kB
Size
16.11 kB
File Count
10
NPM Version
lerna/3.22.1/node@v18.14.0+arm64 (darwin)
Node Version
18.14.0
Published on
Dec 14, 2023
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
9
5
The gatsby-plugin-netlify-cms
package is now deprecated. This plugin has been renamed and moved to Decap CMS. See gatsby-plugin-decap-cms for more information.
Gatsby v1 and Netlify CMS 1.x require gatsby-plugin-netlify-cms@^2.0.0
.
Gatsby v2 and Netlify CMS 2.x require gatsby-plugin-netlify-cms@^3.0.0
.
Gatsby v2 and Netlify CMS (netlify-cms-app) 2.9.x required gatsby-plugin-netlify-cms@^4.0.0
, which is documented below.
Automatically generates an admin/index.html
with a default Netlify CMS implementation.
Netlify CMS is a React single page app for editing git based content via API. Its built for non-technical and technical editors alike, and its super easy to install and configure. For more details, check out the docs site.
Note: gatsby-plugin-netlify-cms@^4.0.0
changes the requirement for Netlify CMS to use a new library published netlify-cms-app@^2.9.x
and is a breaking change.
1npm install netlify-cms-app gatsby-plugin-netlify-cms
Add the Netlify CMS plugin in your gatsby-config.js
:
1plugins: [`gatsby-plugin-netlify-cms`]
Then add your Netlify CMS configuration
file in
static/admin/config.yml
.
Netlify CMS can be configured via the plugin options below. You can learn about how to pass options to plugins in the Gatsby docs.
modulePath
(optional, type: string | Array<string>
, default: undefined
)
If you need to customize Netlify CMS, e.g. registering custom
widgets or
styling the preview
pane,
you'll need to do so in a JavaScript module and provide Gatsby with the path to
your module via the modulePath
option. Any styles imported by this module (or
by the modules that it imports, all the way down the chain) are automatically
applied to the editor preview pane by the plugin.
1plugins: [ 2 { 3 resolve: `gatsby-plugin-netlify-cms`, 4 options: { 5 /** 6 * One convention is to place your Netlify CMS customization code in a 7 * `src/cms` directory. 8 */ 9 modulePath: `${__dirname}/src/cms/cms.js`, 10 }, 11 }, 12]
The js module might look like this:
1/** 2 * The default export of `netlify-cms-app` is an object with all of the Netlify CMS 3 * extension registration methods, such as `registerWidget` and 4 * `registerPreviewTemplate`. 5 */ 6import CMS from "netlify-cms-app" 7 8/** 9 * Any imported styles should be automatically be applied to the editor preview 10 * pane thus eliminating the need to use `registerPreviewStyle` for imported 11 * styles. However if you are experiencing build errors regarding importing css, 12 * sass or scss into a cms module when deploying to the netlify platform, you 13 * may need to follow the implementation found in netlify documentation here: 14 * https://www.netlifycms.org/docs/beta-features/#raw-css-in-registerpreviewstyle 15 * All of the example imports below would result in styles being applied to the 16 * preview pane. 17 */ 18import "module-that-imports-styles.js" 19import "styles.scss" 20import "../other-styles.css" 21 22/** 23 * Let's say you've created widget and preview components for a custom image 24 * gallery widget in separate files: 25 */ 26import ImageGalleryWidget from "./image-gallery-widget.js" 27import ImageGalleryPreview from "./image-gallery-preview.js" 28 29/** 30 * Register the imported widget: 31 */ 32CMS.registerWidget(`image-gallery`, ImageGalleryWidget, ImageGalleryPreview)
manualInit
(optional, type: boolean
, default: false
)
Set this to true
If you need to manually initialize Netlify CMS. The plugin will take care of setting window.CMS_MANUAL_INIT
to true
:
1plugins: [ 2 { 3 resolve: `gatsby-plugin-netlify-cms`, 4 options: { 5 manualInit: true, 6 }, 7 }, 8]
The js module might look like this:
1import CMS from "netlify-cms-app" 2 3/** 4 * Optionally pass in a config object. This object will be merged into `config.yml` if it exists 5 */ 6 7CMS.init({ 8 config: { 9 backend: { 10 name: "git-gateway", 11 }, 12 }, 13})
enableIdentityWidget
(optional, type: boolean
, default: true
)
enableIdentityWidget
is true
by default, allowing Netlify
Identity to be used without
configuration. Disable it when not using Netlify Identity to reduce bundle size.
1plugins: [ 2 { 3 resolve: `gatsby-plugin-netlify-cms`, 4 options: { 5 enableIdentityWidget: true, 6 }, 7 }, 8]
publicPath
(optional, type: string
, default: "admin"
)
Customize the path to Netlify CMS on your Gatsby site.
htmlTitle
(optional, type: string
, default: Content Manager
)
Customize the value of the title
tag in your CMS HTML (shows in the browser
bar).
htmlFavicon
(optional, type: string
, default: ""
)
Customize the value of the favicon
tag in your CMS HTML (shows in the browser
bar).
includeRobots
(optional, type: boolean
, default: false
)
By default, the CMS page is not indexed by crawlers. Use this to add a meta
tag to invite robots to index the CMS page.
customizeWebpackConfig
(optional, type: function
)
Function to customize webpack configuration.
Function parameters:
1plugins: [ 2 { 3 resolve: `gatsby-plugin-netlify-cms`, 4 options: { 5 customizeWebpackConfig: (config, { plugins }) => { 6 const Plugin = require("...") 7 8 config.plugins.push( 9 plugins.define({ 10 "process.env.MY_VAR": JSON.stringify("my var value"), 11 }) 12 ) 13 14 config.plugins.push(new Plugin()) 15 }, 16 }, 17 }, 18]
Here is the plugin with example values for all options (note that no option is required):
1plugins: [ 2 { 3 resolve: `gatsby-plugin-netlify-cms`, 4 options: { 5 modulePath: `path/to/custom/script.js`, // default: undefined 6 enableIdentityWidget: true, 7 publicPath: `admin`, 8 htmlTitle: `Content Manager`, 9 htmlFavicon: `path/to/favicon`, 10 includeRobots: false, 11 }, 12 }, 13]
If you're not using Netlify Identity within your site you have the option to completely disable the widget (and not the CMS). To do so, add the following to gatsby-node.js
:
1const webpack = require(`webpack`) 2 3exports.onCreateWebpackConfig = ({ actions }) => { 4 actions.setWebpackConfig({ 5 plugins: [ 6 new webpack.IgnorePlugin({ 7 resourceRegExp: /^netlify-identity-widget$/, 8 }), 9 ], 10 }) 11}
For help with integrating Netlify CMS with Gatsby, check out the community Slack.
No vulnerabilities found.
Reason
security policy file detected
Details
Reason
no dangerous workflow patterns detected
Reason
GitHub workflow tokens follow principle of least privilege
Details
Reason
license file detected
Details
Reason
no binaries found in the repo
Reason
Found 20/25 approved changesets -- score normalized to 8
Reason
8 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 8
Reason
SAST tool is not run on all commits -- score normalized to 8
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
project is not fuzzed
Details
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
Reason
100 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-07-07
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More