A simple countdown timer panel to demonstrate the devUI plugin system.
example-devui-plugin/
devui-plugin.json # manifest (kind, label, entry point)
build.mjs # esbuild script that shims React from host
package.json # deps + build script
tsconfig.json
src/
index.tsx # TypeScript source
dist/
index.js # built ESM bundle (generated by npm run build)
src/index.tsx— standard React component using typedPanelViewPropsbuild.mjs— esbuild bundles the TSX and replacesreactimports withwindow.__DEVUI_REACT__(the host app exposes React there)devui-plugin.json— tells devUI the panel's kind, label, size, and entry file- On install, if
dist/index.jsis missing, devUI runsnpm install && npm run buildautomatically
Push to GitHub, then in devUI: command palette → "Install App" → youruser/example-devui-plugin
npm install
npm run buildOr manually copy to ~/.devui/apps/local/countdown/ and add to ~/.devui/plugins.json.