Module builtin

Module builtin 

Source
Expand description

Builtin plugin provider interface Builtin Plugin Provider Interface

Provides platform-agnostic interface for accessing builtin plugins. Builtins are distributed as WASM files in mods/builtin/ directory.

§Design Philosophy

  • Single Distribution Mechanism: Builtin and user plugins use same format (WASM)
  • Platform Agnostic: Trait allows different implementations (Desktop/Headless/WebUI)
  • On-Demand Loading: Builtins loaded via DefaultSetup, not at startup
  • No Special Cases: Builtins treated like any other plugin

§Usage

use glitcher_api::builtin::BuiltinProvider;

// Desktop implementation
let provider = DesktopBuiltinProvider::new("mods/builtin");

// List available builtins
for builtin_id in provider.list_builtins() {
    println!("Found builtin: {}", builtin_id);
}

// Load a specific builtin
let wasm_bytes = provider.load_builtin("chromatic-aberration")?;
plugin_controller.load_plugin("chromatic-aberration", &wasm_bytes)?;

Structs§

BuiltinMetadata
Lightweight builtin metadata (without loading WASM)

Traits§

BuiltinProvider
Builtin plugin provider interface