Skip to main content

Plugin SDK reference

The Plugin SDK is set of commands provided by the package @strapi/sdk-plugin orientated around developing plugins to use them as local plugins or to publish them on NPM and/or submit them to the Marketplace.

The present documentation lists the available Plugin SDK commands. The associated guide illustrates how to use these commands to create a plugin from scratch, link it to an existing project, and publish it.

npx @strapi/sdk-plugin init

Create a new plugin at a given path.

npx @strapi/sdk-plugin init
ArgumentsTypeDescriptionDefault
pathstringPath to the plugin./src/plugins/my-plugin
OptionTypeDescriptionDefault
-d, --debug-Enable debugging mode with verbose logsfalse
--silent-Do not log anythingfalse

strapi-plugin build

Bundle the Strapi plugin for publishing.

strapi-plugin build
OptionTypeDescriptionDefault
--forcestringAutomatically answer "yes" to all prompts, including potentially destructive requests, and run non-interactively.-
-d, --debug-Enable debugging mode with verbose logsfalse
--silent-Do not log anythingfalse
--minify-Minify the outputfalse
--sourcemap-Produce sourcemapsfalse
Note

As of v6, the build configuration is automatically derived from your package.json exports field. No configuration file (such as vite.config.ts or rollup.config.ts) is needed.

Using SDK Plugin v5 (legacy)

If you need to continue using the previous build system with @strapi/pack-up, you can pin to version 5.x:

yarn add @strapi/sdk-plugin@5

Version 5.x of the SDK plugin supports packup.config.ts for custom build configuration. However, v6 is recommended for security updates and simplified configuration.

strapi-plugin watch:link

Recompiles the plugin automatically on changes and runs yalc push --publish.

For testing purposes, it is very convenient to link your plugin to an existing application to experiment with it in real condition. This command is made to help you streamline this process.

strapi-plugin watch:link
OptionTypeDescriptionDefault
-d, --debug-Enable debugging mode with verbose logsfalse
--silent-Do not log anythingfalse

strapi-plugin watch

Watch the plugin source code for any change and rebuild it everytime. Useful when implementing your plugin and testing it in an application.

strapi-plugin watch
OptionTypeDescriptionDefault
-d, --debug-Enable debugging mode with verbose logsfalse
--silent-Do not log anythingfalse

strapi-plugin verify

Verify the output of the plugin before publishing it.

strapi-plugin verify
OptionTypeDescriptionDefault
-d, --debug-Enable debugging mode with verbose logsfalse
--silent-Do not log anythingfalse