Files
bitvid/docs/nip46-roadmap.md
T
google-labs-jules[bot] 4196a6bb42 Refactor NIP-46 login UI to be cleaner and QR-first
- Simplified `components/login-modal.html` to center the QR code and use a "Copy Link" button instead of a large textarea.
- Updated `js/ui/loginModalController.js` to support the new DOM structure and error handling.
- Added `docs/nip46-roadmap.md` to document current state and future features.
2026-01-16 19:40:46 +00:00

53 lines
3.3 KiB
Markdown

# NIP-46 Roadmap & Features
This document outlines the current state of our NIP-46 (Nostr Connect) implementation and tracks future enhancements. The goal is to provide a seamless, secure, and user-friendly remote signing experience.
## Current State
As of the latest refactor, the NIP-46 login flow has been simplified to prioritize ease of use for the majority of users:
* **QR-First UX**: The login modal immediately presents a QR code for easy pairing with mobile signers (e.g., Amber, NsecBunker).
* **One-Click Copy**: A prominent "Copy Connect Link" button allows users to quickly grab the `nostrconnect://` URI for manual pasting if needed.
* **Hidden Complexity**: Advanced options like manual bunker URL entry and relay configuration are hidden by default to reduce cognitive load.
* **Manual Fallback**: A "Trouble scanning?" toggle reveals the raw URI for debugging or manual copying in edge cases.
* **Automatic Persistence**: Sessions are automatically remembered to streamline future logins.
## Planned Features & Improvements
The following features are candidates for future implementation:
### 1. Manual Bunker Connection
* **Description**: Allow users to manually paste a `bunker://` URL provided by their signer service.
* **Use Case**: Users who set up a remote signer on a server or desktop application that provides a static connection string.
* **Implementation**: Restore the manual input toggle in a "Advanced" or "Manual" tab within the modal.
### 2. Advanced Relay Configuration
* **Description**: Allow users to customize the relays used for the NIP-46 handshake and subsequent communication.
* **Use Case**: Users with strict privacy requirements or those using private relays for their signing devices.
* **Implementation**: Add a "Relay Settings" accordion or step in the connection flow.
### 3. NIP-05 Discovery
* **Description**: Allow users to enter a NIP-05 address (e.g., `[email protected]`) to discover their signer's relay and public key automatically.
* **Use Case**: Simplifies the login process to just an email-like identifier, similar to regular web logins.
* **Implementation**: Query the `.well-known/nostr.json` of the domain to resolve the NIP-46 config.
### 4. Two-Way Pairing / Auth
* **Description**: Support flows where the client (this app) scans a QR code generated by the signer, rather than the signer scanning the client.
* **Use Case**: Desktop users pairing with a mobile device where the desktop has a webcam.
### 5. Session Management UI
* **Description**: A dedicated settings panel to view connected signers, revoke permissions, or forget saved sessions.
* **Use Case**: Users managing multiple signing devices or rotating keys.
### 6. Multi-Account Support via NIP-46
* **Description**: Better support for signers that manage multiple keys (personas) behind a single connection.
* **Use Case**: Users who want to switch between "Personal", "Work", and "Anon" profiles without reconnecting.
## Known Issues
* **QR Code Density**: Very long URIs (with many relays or long secrets) can create dense QR codes that are hard to scan on low-resolution screens.
* **Browser Compatibility**: The "Copy" button relies on the Clipboard API, which requires a secure context (HTTPS) and active focus.
---
*Last Updated: ${new Date().toISOString().split('T')[0]}*