Skip to main content
Lab plugins

Documentation

Lab plugins

Extend Auva Lab with custom browser-based tools.

Lab plugins

Lab tools register via src/lib/lab/registry.ts.

Plugin interface

interface LabPlugin {
  id: string;
  manifest: LabToolItem;
  load: () => Promise<{ default: React.ComponentType }>;
}

Register

import { registerLabPlugin } from "@/lib/lab/registry";

registerLabPlugin({
  id: "my-tool",
  manifest: { id: "my-tool", name: "My Tool", href: "/lab/my-tool", ... },
  load: () => import("./plugins/my-tool"),
});

Built-in tools run 100% client-side - no data leaves the browser.