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
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: