Publish
Publish custom extensions to help teammates or other Foxglove users leverage your contribution in their own workflows.
Defining metadata
Set your extension's metadata fields in the package.json
file:
name
publisher
version
description
Packaging your extension
When you're ready to distribute your extension, run npm run package
to produce a ZIP archive with a .foxe
extension that contains your extension manifest and compiled code — e.g. myExtensionName-0.0.0.foxe
.
Sharing with your team
Publish your extension with the foxglove
CLI for the rest of your organization to use in Foxglove:
$ foxglove extensions publish ./my-extension.1.0.0.foxe
All extensions are installed automatically to every organization member's Foxglove instance, and any existing extensions that are no longer listed in the organization registry are uninstalled.
Only admins can view an organization's extensions in your Foxglove account or via the foxglove
CLI.
$ foxglove extensions list
Admins can also un-publish an extension from the web interface or via the CLI. Unpublished extensions are removed from Foxglove installations.
$ foxglove extensions unpublish [ID]
Sharing publicly
Share your extension with all Foxglove users by adding it to the extension marketplace (installing extensions via the marketplace is only supported on the desktop app).
Publish your .foxe
file somewhere public – we recommend GitHub releases alongside your code. Then, open a PR in the repo to update extensions.json and this README's "Extensions" section with your extension information.
Once we merge your PR, your extension will be available for anyone to install in Foxglove's Settings.