Plugins & SDK

Extend Veilind

Veilind plugins are written in TypeScript and run sandboxed in isolated Web Workers — fast, safe, and impossible to crash the launcher. A real SDK, a real CLI, real types.

~/plugins
# scaffold, develop, ship
npm install -g @veilind/cli
veilind create my-plugin
cd my-plugin && npm run dev

# your plugin, fully typed
import { definePlugin } from "@veilind/api";

export default definePlugin({
  id: "github-search",
  keyword: "gh",
  async search(query) {
    const repos = await searchRepos(query);
    return repos.map((r) => ({
      title: r.full_name,
      subtitle: r.description,
      action: () => open(r.html_url),
    }));
  },
});

Sandboxed Web Workers

Each plugin runs isolated. No plugin can freeze the bar or read another's data.

First-class typings

@veilind/api gives you autocomplete and type-safety for every result kind and action.

Hot reload & toggles

Flip plugins on and off from Settings; they hot-load into the running launcher instantly.

Build CLI included

@veilind/cli scaffolds, bundles and watches your plugin during development.

@veilind/api

The SDK and TypeScript types your plugin imports. Published on npm.

@veilind/cli

Scaffold, build and develop plugins from your terminal.

Example plugin

A complete GitHub repository search plugin to learn from.