sanity-plugin-preflight
This is a Sanity Studio v3 plugin.
The Preflight plugin is a modular Sanity document extension for running various checks
prior to publishing content.
Current available checks include:
- Dead Links: Ensure that all links in a document are reachable.
- SEO Audit: Automated report for SEO best practices.
Installation
npm install @planetary/sanity-plugin-preflight
Usage
Modify your deskStructure
file to include the following.
If you don't have a custom Structure Builder configuration, please see the official guide:
import {Preflight, DeadLinks} from '@planetary/sanity-plugin-preflight'
import {RocketIcon} from '@sanity/icons'
export const getDefaultDocumentNode = ({schemaType}) => {
if (['article', 'page'].includes(schemaType)) {
return S.document().views([
S.view.form(),
S.view
.component(
Preflight({
plugins: [DeadLinks()],
}),
)
.title('Preflight')
.icon(RocketIcon),
])
}
return S.document().views([S.view.form()])
}
Develop & test
This plugin uses @sanity/plugin-kit
with default configuration for build & watch scripts.
See Testing a plugin in Sanity Studio
on how to run this plugin with hotreload in the studio.
Release new version
Run "CI & Release" workflow.
Make sure to select the main branch and check "Release new version".
Semantic release will only release on configured branches, so it is safe to run release on any branch.
License
MIT © Planetary Corporation