sal-modular/extension
2025-05-22 11:53:32 +03:00
..
assets feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
background feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
dist feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
popup feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
public feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
build.js feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
manifest.json feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
package-lock.json feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
package.json feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
README.md feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
vite.config.js feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00

Modular Vault Browser Extension

A cross-browser (Manifest V3) extension for secure cryptographic operations and Rhai scripting, powered by Rust/WASM.

Features

  • Session/keypair management
  • Cryptographic signing, encryption, and EVM actions
  • Secure WASM integration (signing only accessible from extension scripts)
  • React-based popup UI with dark mode
  • Future: WebSocket integration for remote scripting

Structure

  • manifest.json: Extension manifest (MV3, Chrome/Firefox)
  • popup/: React UI for user interaction
  • background/: Service worker for session, keypair, and WASM logic
  • assets/: Icons and static assets

Dev Workflow

  1. Build Rust WASM: wasm-pack build --target web --out-dir ../extension/wasm
  2. Install JS deps: npm install (from extension/)
  3. Build popup: npm run build
  4. Load /extension as an unpacked extension in your browser

Security

  • WASM cryptographic APIs are only accessible from extension scripts (not content scripts or web pages).
  • All sensitive actions require explicit user approval.

TODO

  • Implement background logic for session/keypair
  • Integrate popup UI with WASM APIs
  • Add WebSocket support (Phase 2)