docs/extending/plugin-distribution.mdx
import FbPluginReleases from './fb/desktop-plugin-releases.mdx'
<OssOnly>Flipper plugins are essentially standard npm packages, which means you can publish them by executing yarn publish or npm publish in the plugin directory.
The only requirements are:
package.json and code must follow the Flipper plugin specification
Code must be bundled using "flipper-pkg" before packing or publishing. This can be done by executing flipper-pkg bundle on prepack step:
{
...
"devDependencies": {
...
"flipper-pkg": "latest"
},
"scripts": {
...
"prepack": "flipper-pkg bundle"
}
}
To package a plugin as a tarball, you can use the same command as for packaging any other npm package (using yarn pack or npm pack).
flipper-pkg also provides a convenient command pack that does the following:
Example
To package a plugin located at ~/flipper-plugins/my-plugin to ~/Desktop, execute the following command:
flipper-pkg pack ~/flipper-plugins/my-plugin -o ~/Desktop
It's possible to install plugins into Flipper from tarballs. This is useful in cases when you need to try a plugin version that is not published to npm, or if you want to distribute plugin privately. Take the following steps: