frostr icon indicating copy to clipboard operation
frostr copied to clipboard

Abstract core functionality into WASM binary

Open space-shell opened this issue 1 year ago • 1 comments

Overview:

The Nostr protocol is tightly coupled to the browser via the WebSocket transport layer. Considering that Nostr can be considered a browser based protocol ( unlike TCP, MQTT, etc. ) it would make sense to consider an isomorphic approach to development.

The ability to manage FROST keys within both the browser and the server environments would accelerate the overall integration of this technology into the Nostr ecosystem.

Proposal:

This repository serves as an monorepo housing a CLI application, a rust library, a JavaScript library and a standalone WASM core where FROST keys can be managed by relays and browser clients alike.

This package could also expose a CLI ( as it does now ) to manage FROST keys and Nostr notes.

Next Steps:

  • Abstract the core FROST key management functionality into an isolated WASM binary
  • Implement and standardise both the Rust and JavaScript interfaces

space-shell avatar Apr 25 '24 09:04 space-shell

Initial works on a standalone binary of the FROST crate:

https://github.com/space-shell/frost-wasm

space-shell avatar Apr 25 '24 15:04 space-shell