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§
- Builtin
Metadata - Lightweight builtin metadata (without loading WASM)
Traits§
- Builtin
Provider - Builtin plugin provider interface