Back to Flipper

Dynamically Loading Plugins

docs/extending/loading-custom-plugins.mdx

0.273.01.2 KB
Original Source
<FbInternalOnly>

:::caution Within Meta, plugins sources are stored and loaded from ~/fbsource/xplat/sonar/desktop/plugins, in which case no further configuration is needed.

If your team uses Flipper plugins that are stored outside fbsource, please follow your team specific instructions. :::

</FbInternalOnly>

Flipper loads and runs plugins it finds in a configurable location. The paths searched are specified in ~/.flipper/config.json. These pluginPaths should contain one folder for each of the plugins it stores.

An example config setting and plugin file structure is shown below:

~/.flipper/config.json:

bash
{
  ...,
  "pluginPaths": ["~/flipper-plugins"]
}

Plugin File example structure:

~ flipper-plugins/
    my-plugin/
      package.json
      src/index.tsx
      dist/bundle.js
<OssOnly>

:::note When using npx flipper-pkg init for scaffolding, as explained in the tutorial or on the next page, the path should be configured automatically for you in most cases. :::

</OssOnly>

Typically, the above setup is only needed if you are developing plugins.

To consume plugins, it is recommended to use one of the existing distribution mechanisms