create-foxglove-extension
Version:
Create and package Foxglove extensions
40 lines (23 loc) • 1.45 kB
Markdown
# ${NAME}
[Foxglove](https://foxglove.dev) allows developers to create [extensions](https://docs.foxglove.dev/docs/visualization/extensions/introduction), or custom code that is loaded and executed inside the Foxglove application. This can be used to add custom panels. Extensions are authored in TypeScript using the `@foxglove/extension` SDK.
## Develop
Extension development uses the `npm` package manager to install development dependencies and run build scripts.
To install extension dependencies, run `npm` from the root of the extension package.
```sh
npm install
```
To build and install the extension into your local Foxglove desktop app, run:
```sh
npm run local-install
```
Open the Foxglove desktop (or `ctrl-R` to refresh if it is already open). Your extension is installed and available within the app.
## Package
Extensions are packaged into `.foxe` files. These files contain the metadata (package.json) and the build code for the extension.
Before packaging, make sure to set `name`, `publisher`, `version`, and `description` fields in _package.json_. When ready to distribute the extension, run:
```sh
npm run package
```
This command will package the extension into a `.foxe` file in the local directory.
## Publish
You can publish the extension to the public registry or privately for your organization.
See documentation here: https://docs.foxglove.dev/docs/visualization/extensions/publish/#packaging-your-extension