Skip to content

Settings panel

Declare the settings panel in plugin.json:

{
"settings": {
"entry": "frontend/settings/Settings.vue"
}
}

In frontend/settings/Settings.vue, use useToolSettings:

const config = useToolSettings<MyConfig>('timestamp-tool', { format: 'seconds' });
config.value.format = 'milliseconds'; // persisted automatically on change

Config is stored under the tools.<toolId> namespace in settings.json and is deep-merged with the defaults — new fields get their defaults automatically, with no migration needed.

Reference: hello-world/frontend/settings/Settings.vue.