Preferred extension architecture
ISA Warden itself is primarily built with:
- Svelte and Vite in
chat-ui-3/package.json - Rust and Tauri in
chat-ui-3/src-tauri/Cargo.toml
The preferred extension architecture is therefore:
- UI: Svelte-based web UI
- Native/backend logic: Rust native binary when native logic is needed
- Host integration: browser bridge via
window.isaExtensionBridge
2.1 Default implementation guidance
Use the following default decision order:
- Use a browser-only extension if the host already provides the needed capabilities.
- Add Rust native logic only when the extension needs long-running work, local services, parsing, local binaries, or OS-facing behavior.
- Use host APIs before building a parallel service layer.
2.2 Allowed alternatives
Alternative stacks are allowed, but they are not preferred.
If an extension diverges from the preferred stack, it must still:
- package correctly
- integrate with the host bridge
- comply with rights and permission rules
- comply with styling rules in this specification
- clearly document build and runtime tradeoffs