Local development
If you want to create more complex plugins you have also the option to develop a plugin with a local dev environment using your favorite editor. This lets you load other plugins and organize your code in multiple files.
- 1
Clone the repository and run the dev server
git clone https://github.com/storyblok/storyblok-fieldtype cd storyblok-fieldtype npm install npm run dev
This will spin up a server on
http://localhost:8080
. - 2
Change the URL of the dev server
Please change your URL to
https://app.storyblok.com
fromhttp://app.storyblok.com
. In this FAQ, you can read how to set up a dev server with an HTTPS proxy on MacOS. - 3
Change the plugin name
Open the file
src/Plugin.vue
and change the plugin name in the initWith method to the one you created in Storyblok.initWith() { return { // needs to be equal to your storyblok plugin name plugin: 'my-plugin-name', title: '', description: '' } }
- 4
Enable local dev mode
Now you can click the checkbox Enable local dev mode in the Plugin Editor to load your local environment into the field plugin preview and start developing your plugin.
- 5
Deployment
When you finished developing your plugin you need to run
npm run build
and copy the content of the filedist/export.js
into the editor text field of the Storyblok app and click the Save button. Now, you should be able to see what you developed locally without having the localhost running. Make sure the name of your plugin is the same as inPlugin.vue
, otherwise the import will fail.
If the name of the plugin you created in Storyblok doesn't match the name in the initWith()
method in the Plugin.vue
file, you will get an import error. Also, make sure that you're using the correct version of @vue/cli-service
so it compiles correctly.
Check out the tutorial about plugin development on Markus Oberlehner's blog.